본문 바로가기

분류 전체보기99

이펙티브 자바 https://www.aladin.co.kr/search/wsearchresult.aspx?SearchTarget=All&SearchWord=%EC%9D%B4%ED%8E%99%ED%8B%B0%EB%B8%8C+%EC%9E%90%EB%B0%94 알라딘: 검색결과 '이펙티브 자바' 검색어(도로명,건물명,지번)를 입력해주세요(지번+도로명 통합 검색) www.aladin.co.kr 이펙티브 자바 스터디 진행 이후 정리한 내용입니다. 정적 팩토리 메소드 : Entity 작성을 하면서 new Board로 바로 접근 가능하게 하는 방식이 아닌 public static Board createBoard(parameters….)와 같은 방식으로 선언하자, 장점도 추가적으로 기억 생성자 보다는 빌더를 애용 private 생성.. 2023. 10. 19.
쿼리 작성 시 주의할 부분... ING 쿼리 스터디를 진행하면서 작성하고 있습니다. 꾸준히 추가 예정 쿼리에는 두가지 종류가 존재한다. OLTP와 OLAP OLTP 쿼리 : 간단한 select 쿼리, 이는 서비스와 트랜잭션에서 사용되는 부분이며 주된 목적은 인덱스를 반드시 사용해서 빠른 시간내에 response를 돌려주는 것이 목표이며, 랜던 I/O로 작업이 진행된다. 이들의 작업은 단일 CPU로도 충분한다. OLAP 쿼리 : 분석용 쿼리, 통계, 집계, 데이터 분석용 등의 분석용 쿼리 이는 응답 속도 보다는 전체 처리 성능을 목표로 둔다. index seek + scan이 가능하며, 랜덤 I/O가 아닌 순차 진행으로 진행 병렬로 처리된다. OLTP와 OLAP의 쿼리의 진행 방법이 완전히 다르기 때문에 작성할 쿼리가 둘 중 어떤 아이로 진행할.. 2023. 10. 10.
select이 느리면 인덱스를 추가해보자 사용자 개인의 다운로드 조회를 진행하면서 조회 쿼리가 약 27s가 걸리는 것을 확인했다. insert의 행위도 아닌데 select을 진행하면서 27초가 걸리는 상황이 너무 당황스러웠는데... 엄청 복잡한 쿼리도 아닌 상황이다. join 테이블이 세개인 상황으로 이상하게 시간이 많이 걸리는 상황이었다.. 1. 컨텐츠 2. 컨텐츠 코드 3. 다운로드 로그 세 테이블을 조인하고 각 컨텐츠의 제일 최신 날짜를 조회해보는 쿼리가 27초라니... 우선 확인을 해보자 처음에는 max date를 검색하는 상황에서 오래 걸리는 건가? 했는데 쿼리를 변경하고도 18초가 소요되는 상황이 발생했다... 그럼 현재 검색 속도를 조금 더 빠르게 하기 위해서 고려할 부분은 두가지 정도 생각해냈다. 1. 해당 로그의 사용자 최신 날.. 2023. 10. 6.
@EqualsAndHashCode에 대한 정리 @Data를 탐험하다가 @EqualsAndHashCode를 확인했다. Data Annotaion을 확인해보자. See Also를 참고해보면 Getter, Setter, RequiredArgsConstructor은 익숙하니 넘어가고 이번에는 @EqualsAndHashCode을 확인해보고 싶다. https://projectlombok.org/features/EqualsAndHashCode @EqualsAndHashCode projectlombok.org 정말 영어는 언제나 어렵고 제일 위의 설명을 참고하면 Objects를 상속한 fields에 한하여 equals and hashCode methods를 전부 implementation을 진행하겠다는것인데... 우리가 선언하는 아이들은 기본적으로 object가 .. 2023. 9. 21.
@RequsestBody와 Setter DTO에서 Setter을 사용하는 부분에 대해서 확인 중에 신기한 부분을 발견해서 정리해본다. https://jojoldu.tistory.com/407 @Request Body에서는 Setter가 필요없다? 회사에서 근무하던중 새로오신 신입 개발자분이 저에게 하나의 질문을 했습니다. POST 요청시에 Setter가 필요없는것 같다고. 여태 제가 알던것과는 달라서 어떻게 된 일인지 궁금했습니다. 정말 P jojoldu.tistory.com @RequestBody는 Setter가 필요없다? 주로 RequestBody로 받는 파라미터는 @Data와 함께 사용한다. 근데 Setter가 필요 없다? 몇가지 실험을 해보자 1. 조합 : RequestBody, Data @ResponseBody @PostMapping.. 2023. 9. 18.
DTO에서 @Setter쓰는 것에 대한 주저리[1] JPA를 사용하다 보면 @Setter을 사용하고자 하면 조심해야한다의 상황은 익숙하다. 하지만 우리는 비즈니스 로직에서 주로 사용하는 @Data 어노테이션은 @Setter을 내제하고 있다. https://projectlombok.org/features/Data @Data projectlombok.org https://www.inflearn.com/questions/161417/dto-%EC%82%AC%EC%9A%A9%EC%97%90%EB%8C%80%ED%95%B4-%EA%B6%81%EA%B8%88%ED%95%A9%EB%8B%88%EB%8B%A4 DTO 사용에대해 궁금합니다. - 인프런 | 질문 & 답변 안녕하세요 영한님.항상 좋은강의 보면서 이미 완강을 하였지만 궁금한점이 이 강의내용에 해당되는것 같아 .. 2023. 9. 17.