본문 바로가기
반응형

JPA33

JPA에서 대량의 데이터를 삭제할때 주의해야할 점 안녕하세요? 이번 시간엔 JPA에서 대량의 데이터를 삭제할때 주의해야할 점을 샘플예제로 소개드리려고 합니다. 모든 코드는 Github에 있기 때문에 함께 보시면 더 이해하기 쉬우실 것 같습니다. (공부한 내용을 정리하는 Github와 세미나+책 후기를 정리하는 Github, 이 모든 내용을 담고 있는 블로그가 있습니다. ) 발단 업무중에 배치로 일괄 데이터 삭제 기능을 작업하였습니다. 테스트를 진행하는데 삭제 성능이 너무나 안나오는 것이였습니다. 단순 삭제에서 왜이렇게 성능이 안나오나 slow query를 확인해보는데 이상한 점을 발견하였습니다. 이를 샘플예제로 소개드리겠습니다. 예제 샘플 코드 작성을 위해 다음과 같은 의존성들을 사용할 예정입니다. Gradle을 사용할 예정이며, 테스트 프레임워크로 S.. 2017. 10. 16.
JPA N+1 문제 및 해결방안 안녕하세요? 이번 시간엔 JPA의 N+1 문제에 대해 이야기 해보려고 합니다. 모든 코드는 Github에 있기 때문에 함께 보시면 더 이해하기 쉬우실 것 같습니다. (공부한 내용을 정리하는 Github와 세미나+책 후기를 정리하는 Github, 이 모든 내용을 담고 있는 블로그가 있습니다. ) 본문 JPA를 사용하면 자주 만나게 되는 것이 N+1 문제입니다. 예를 들어, 아래와 같은 구조에서 Academy를 호출하여 그 안에 속한 Subject를 사용한다고 가정해보겠습니다. 간단하게 이들의 관계를 코드로 표현하겠습니다. (lombok을 사용하였습니다.) @Entity @Getter @NoArgsConstructor public class Academy { @Id @GeneratedValue private.. 2017. 7. 24.
SpringBoot에서 JPA 쿼리 파라미터 확인하기 안녕하세요? 이번 시간엔 아주 간단한 팁이지만, 필요하신 분들이 많이 계실것 같은 SpringBoot에서 JPA 쿼리에 사용된 파라미터 값을 확인하는 방법을 소개하려 합니다. 모든 코드는 Github에 있기 때문에 함께 보시면 더 이해하기 쉬우실 것 같습니다. (공부한 내용을 정리하는 Github와 세미나+책 후기를 정리하는 Github, 이 모든 내용을 담고 있는 블로그가 있습니다. ) 본문 사실 이렇게 포스팅하기엔 너무 깃털같은 양이라 부끄럽기도 합니다^^; 방법은 아주 간단합니다. 프로젝트의 application.yml/properties 에 logging.level.org.hibernate.type을 추가하신후, 값을 trace로 하시면 됩니다. 추가 팁 application.yml / prope.. 2017. 5. 29.

728x90
반응형