profile
성장하는 신입 백엔드 개발자입니다 :)
post-thumbnail

Java GC에 대해

Java GC Java는 JVM에서 GC가 자동으로 동작한다. GC를 실행하기 위해 JVM이 어플리케이션 실행을 멈추는 stop-the-world가 발생하고 GC를 실행하는 쓰레드를 제외한 나머지 쓰레드는 모두 작업을 멈춘다. GC 기법으로 세대 단위 쓰레기 수집 기법

약 12시간 전
·
0개의 댓글

GC(Garbage Collection)란? + GC 기법에 대해

GC(Garbage Collection)란? 메모리 관리 기법 중 하나로 프로그램이 동적으로 할당했던 메모리 영역 중에서 필요없게 된 영역을 해제하는 기능이다. 더 이상 필요없게 된 영역이란 어떤 변수도 가리키지 않게 된 영역을 의미한다. Java의 경우 처음부터 GC 기법을 염두에 두고 설계되어 언어 정의에 쓰레기 수집이 포함되어 있다. 다음과 같은 버그...

약 14시간 전
·
0개의 댓글

[프로그래머스 / Level3] 입국 심사 (Java)

문제에서 큰 값이 나올 수 있으면 long 사용 여부를 확인하자. 문제 보기 사용한 것 시간 복잡도를 해결하기 위한 이진탐색 사용. 풀이 방법 입국 심사를 기다리는 사람은 최대 1,000,000,000명, 한 사람당 최대 심사 시간은 1,000,000,000분이다

약 18시간 전
·
0개의 댓글

[프로그래머스 / Level3] N으로 표현 (Java)

다이나믹 프로그래밍으로 풀어야 하는데 DFS로 풀이한 것 같다. 다이나믹 프로그래밍을 더 연습하자. 문제 보기 사용한 것 N을 8번 이하 사용하여 목표 값을 구할 수 있는지 판별하기 위한 DFS 풀이 방법 DFS를 진행하면서 더하거나, 빼거나, 나누거나, 곱한다. 사칙연산을 사용하지 않고 붙여서 사용하는 경우도 생각한다. (5 두번하면 55) N의 사...

1일 전
·
0개의 댓글

JPQL fetch join에서 on절을 사용할 수 있을까?

결론부터 말하자면 fetch join에서 on절을 사용할 수 없다. > with-clause not allowed on fetched association 사용하려고 한다면 위와 같은 에러를 마주하게 된다. on절을 사용하고자 한 이유 헤어샵 예약 관리 시스템을 개발하던 중, 해당 날짜, 헤어샵의 디자이너별 예약 가능한 시간을 조회하기 위하여 다음과...

3일 전
·
0개의 댓글

[프로그래머스 / Level3] 다단계 칫솔 판매 (Java)

재귀함수를 사용 시 쓸데 없는 호출이 있는지 확인하자. 문제 보기 사용한 것 멤버와 추천인을 저장하기 위한 해시 테이블 풀이 방법 enroll, referral을 순회하며 멤버와 추천인을 저장한다. sellecr, amount를 순회하며 판매자, 판매한 개수 * 100 로 share()을 호출한다. 이익의 90%를 자신이 가진다. 이익의 10%...

3일 전
·
0개의 댓글
post-thumbnail

MySQL 데이터베이스 한번에 끝내기 강의 정리

강의 바로가기 여기 SQL의 분류 DML(Data Manipulation Language) 테이블의 row SELECT, INSERT, UPDATE, DELETE 트랜잭션이 발생하는 SQL도 DML에 속함 DDL(Data Definition Language

4일 전
·
0개의 댓글

[프로그래머스 / Level4] 동굴 탐험 (Java)

순서에 상관 없이 방문 가능 여부만 판단하면 되는 문제도 있다. 문제 보기 사용한 것 노드의 방문 가능 여부를 구하기 위해 BFS 사용 HashMap에 노드 번호와 해당 노드에서 방문 가능한 노드 리스트 저장 visited로 노드 방문 여부 저장 before에 선후 관계 저장 save에 도달할 수 있지만 선후 관계 때문에 아직 방문못하는 노드 저장 풀...

4일 전
·
0개의 댓글
post-thumbnail

부하 테스트 중 발생한 Connection is not available(timeout) 에러 해결

Jmeter로 대량의 HTTP request를 보내는 부하 테스트를 진행하던 중, 10000개의 스레드가 동시 요청할 때 HikariCP connection-timeout 설정 값을 넘기게 되어 에러가 발생하였다. 처음에는 Connection의 개수가 부족해서 발생한

5일 전
·
0개의 댓글

[프로그래머스 / Level3] 경주로 건설 (Java)

미로 찾기 최단 거리 사용한 것 최소 비용으로 경주로를 건설하기 위한 BFS 좌표, 방향, 비용을 저장하기 위한 Point 좌표, 방향 방문 여부를 저장하기 위한 visited 좌표 벗어났는지 판별하기 위한 isOOB() 풀이 방법 방문 여부를 좌표, 방향별로 저장하기 위해 booleanN[4]로 visited 초기화 경주로 건설의 최소 비용 탐색(BF...

5일 전
·
0개의 댓글

[프로그래머스 / Level3] 보석 쇼핑 (Java)

getOrDefault() : 해시 맵에 있으면 가져오고 없으면 default 반환하는 메소드 문제 보기 사용한 것 연속적으로 진열 된 보석을 구입할 때 모든 보석을 구매하기 위한 최소 구간을 구하기 위해 투 포인터 사용 보석이름, 구간별 보석의 수를 쌍으로 저장하기 위한 해시 맵 풀이 방법 보석의 종류 수를 구하기 위해 gems를 배열에서 Set으로...

5일 전
·
0개의 댓글

[프로그래머스 / Level2] 수식 최대화 (Java)

문제 보기 사용한 것 연산자 우선순위의 모든 경우를 계산하기 위한 DFS 수식을 계산하기 위한 중위 표기법 -> 후위 표기법 변환 & 계산 풀이 방법 DFS 돌면서 연산자 별로 우선 순위를 정하고, 모두 정해지면 calc() 연산자 우선순위를 고려하여 중위 표기법 -> 후위 표기법으로 변환 후위 표기법을 계산한 뒤 절대 값이 max 보다 크면 교체 ma...

2022년 6월 29일
·
0개의 댓글

프로젝트 중 느낀 JPQL Fetch Join의 필요성

프로젝트에서 헤어샵과 날짜별로 예약 가능 시간들을 포함한 디자이너 리스트를 출력하는 기능이 필요했다. 헤어샵과 디자이너가 일 대 다, 디자이너와 예약이 일 대 다 관계이고, request와 response는 다음과 같다. 그렇다면 DesignerRepository에

2022년 6월 27일
·
0개의 댓글
post-thumbnail

이더넷(Ethernet)이란?

세그먼트: data에 4계층(TCP 등)이 붙은 것패킷: 세그먼트에 3계층(IP 등)이 붙은 것프레임: 패킷에 2계층(Ethernet 등)이 붙은 것2계층인 데이터링크 계층에 속함IEEE 802.3으로 표준화 됨단거리는 UDP케이블, 장거리는 광케이블을 통해 전송비용이

2022년 6월 26일
·
0개의 댓글

[프로그래머스 / Level3] 광고 삽입 (Java)

문제 보기 사용한 것 누적 재생시간이 가장 많이 나오는 곳을 구하기 위한 누적 합 시간을 String int로 변환하는 toIntTime(), toStrTime() 풀이 방법 "HH:MM:SS" (String) -> seconds (int)로 변환하여 풀이 log

2022년 6월 24일
·
0개의 댓글

[프로그래머스 / Level3] 순위 (Java)

문제 보기 사용한 것 순서가 없고 중복을 허용하지 않는 자료구조 Set 풀이 방법 Result 클래스에 Set으로 win, lose 필드 생성 Map 로 선수 별 결과를 저장 A가 B를 이기면 A win에 B, B win 추가 B lose에 A, A lose 추가 A lose들을 돌면서 B, B win 추가 B lose들을 돌면서 A, A...

2022년 6월 24일
·
0개의 댓글

Spring Service 단위 테스트에서 Mockito 사용하기

팀 프로젝트를 하면서 테스트 코드 작성에 문제가 발생하였다. 협업을 위해 도메인별로 파트를 나눴었고, 내가 맡은 도메인은 여러 도메인과 얽혀있어 독립적이지 않았다. 따라서 내가 맡은 도메인 제외, 연관 관계에 있는 모든 엔터티들을 구현하고 실제로 jpa reposi

2022년 6월 22일
·
0개의 댓글
post-thumbnail

팀 프로젝트 커밋 메시지, PR 규칙

프로그래머스 데브코스에서 새로운 팀 프로젝트를 시작한다. 협업을 진행하면서 깃허브로 형상 관리를 할 예정이기 때문에 커밋과 PR의 컨벤션을 정해보려 한다. 커밋 메시지 >-예시- ✨로컬 로그인 기능 추가 (생략 가능) 부연 설명 (생략 가능)

2022년 6월 19일
·
0개의 댓글

[백준 / 골드5] 2110번 공유기 설치 (Java)

문제 보기 사용한 것 시간 복잡도를 통과하기 위한 이진 탐색 이진 탐색 중 upper bound 사용 풀이 방법 간격을 1부터 마지막 집의 X좌표 - 첫 집의 X좌표 까지 이진 탐색으로 가능한지 탐색 upper bound를 사용하여 불가능한 가장 작은 인덱스 구함 일반적으로 정답은 upper bound 결과 값 - 1 하지만 마지막 인덱스가 가능...

2022년 6월 18일
·
0개의 댓글

[백준 / 골드2] 7453번 합이 0인 네 정수 (Java)

lower bound: k값 이상이 처음 나오는 인덱스 구하기 upper bound: k값 초과가 처음 나오는 인덱스 구하기 문제 보기 사용한 것 시간 복잡도를 통과하기 위한 이진 탐색 이진 탐색 중 lower bound, upper bound 사용 풀이 방법 a

2022년 6월 18일
·
0개의 댓글