본문 바로가기

Spring data JPA3

[DynamoDB] Spring Data DynamoDB와 JPA 함께 적용후 문제 발생시 해결방법 모든 코드는 Github에 있습니다. Spring Data JPA를 사용중인 기존 프로젝트에 Spring Data DynamoDB 를 바로 적용하면 아래와 같은 문제들이 발생할때가 있습니다. Caused by: java.lang.IllegalArgumentException: Not a managed type: class XXX 혹은 BeanDefinitionOverrideException: Invalid bean definition with name 'XXXRepository' defined in null: Cannot register bean definition 어떨때 이런 문제가 발생하는지, 어떻게 해결하는지 빠르게 확인해보겠습니다. 1. 문제 상황 먼저 JPA만 프로젝트에 추가해서 테스트를 진행해보.. 2020. 3. 7.
[Querydsl] 서브쿼리 사용하기 안녕하세요! 이번 시간에는 Querydsl에서의 Subquery 기본 가이드를 진행합니다. 개인적으로 ORM을 사용하며, 객체지향적으로 엔티티가 구성되어있으면 서브쿼리가 필요한 일은 거의 없다고 생각하는데요. 혹시나 필요한 분들이 계시면 도움이 되셨으면 합니다. 그럼 시작합니다! 모든 코드는 Github에 있으니 참고하세요 :) 1. select Sub Query 첫번째는 select절의 서브쿼리입니다. 도메인에 대한 설명보다는 Querydsl 코드가 좀 더 도움이 되실것 같아 코드로 바로 설명드리겠습니다. Spring Data Jpa에서 Querydsl 적용을 어떻게 하는지는 이전 포스팅을 참고해보세요 :) Querydsl의 코드는 아래와 같습니다. 여기서 주의깊게 봐야할 코드는 ExpressionUt.. 2019. 1. 18.
Spring Boot Data JPA 2.0 에서 id Auto_increment 문제 해결 안녕하세요? 이번 시간엔 Spring Boot JPA 2.0 에서 PK의 Auto_increment 문제를 알아보려고 합니다. 모든 코드는 Github에 있기 때문에 함께 보시면 더 이해하기 쉬우실 것 같습니다. (공부한 내용을 정리하는 Github와 세미나+책 후기를 정리하는 Github, 이 모든 내용을 담고 있는 블로그가 있습니다. ) 문제 회사의 신규 시스템 구축을 Spring Boot 2.0으로 진행하게 되었습니다. 진행 도중 Spring Data Jpa의 @GeneratedValue가 기존과 다르게 작동하는걸 발견하게 되었습니다. 예를 들어 아래와 같이 1.5.x 에서 사용하던대로 엔티티 클래스를 생성했습니다.2.0에서도 기본 전략이 AUTO임을 확인하고 테스트 코드를 작성했는데요. 이렇게 M.. 2018. 5. 12.