개발일지(주간)

23주차 개발일지

move2 2023. 2. 5. 22:39

jpa심화에 대해서 배우기 시작했다.

spring data jpa 이전의 db작성법에 대해서도 배웠는데, spring data jpa가 나 대신 얼마나 많은 일을 해주는지 알게 되었다.

또한  QueryDSL에 대해서도 배웠는데, 아직도 개념이 헷갈려서 강의를 다시 보고 있다.

QueryDSL을 사용하는 이유는 4가지가 있는데, 다음과 같다.

  1. 문자가 아닌 코드로 쿼리를 작성함으로써, 컴파일 시점에 문법 오류를 쉽게 확인할 수 있다.
  2. 자동 완성 등 IDE의 도움을 받을 수 있다.
  3. 동적인 쿼리 작성이 편리하다.
  4. 쿼리 작성 시 제약 조건 등을 메서드 추출을 통해 재사용할 수 있다.

QueryDSL과 JPAQueryFactory를 사용하면 직접 jpql을 써서 쿼리를 작성하는 것보다 더 직관적으로 작성할 수 있다는장점도 있다.

어떻게 사용하는지는 강의를 봐서 알겠는데 어떻게 실제 프로젝트에 적용해야 할지는 헷갈린다.

아마 직접 프로젝트에 적용해 봐야 이해가 될 것 같다.

다음 프로젝트에서 틈틈히 시간날때마다 강의를 다시 보면서 적용해 볼 것 같다.