JPA

[Querydsl] 적용 방법

감자b 2024. 12. 30. 00:16
//Querydsl 추가
implementation 'com.querydsl:querydsl-jpa:5.0.0:jakarta'
annotationProcessor "com.querydsl:querydsl-apt:${dependencyManagement.importedProperties['querydsl.version']}:jakarta"
annotationProcessor "jakarta.annotation:jakarta.annotation-api"
annotationProcessor "jakarta.persistence:jakarta.persistence-api"
clean {
     delete file('src/main/generated')
}

Gradle clean 작업이 실행될 때 src/main/generated 디렉토리를 삭제

이는 인텔리제이로 빌드 시 'src/main/generated’에 QClass가 생성되는데 이를 제거하기 위함. (안해도 상관없어 보인다.)

 

만약 인텔리제이에서 빌드를 gradle이 아닌 Intellij로 선택 QClass 생성 위치가 달라질 수 있음.

build 하위에 생성되는 것이 일반적

 

main()을 실행하면 Q파일이 자동으로 생성되는데, 만약 생성이 잘 안된다면?

Gradle → Tasks → build → clean 후

  • gradle → Tasks → build → build 선택
  • gradle → Tasks → other → compile java 선택

Qfile의 경우 컴파일 할 때 마다 새로 생성 → git으로 관리하면 충돌이 발생할 수 있으므로 관리 X

Qfile은 build 하위에 생성되어야 함 (build/generated/querydsl)