오늘은 JPA에서 querydsl사용을 위한 설정을 정리해 보려고 한다.
build.gradle 설정
스프링부트 2.6이상, Querydsl5.0을 지원하는 방법으로 정리해 보았다. 스프링부트 2.6부터는 Querydsl5.0을 사용 한다.
buildscript {
ext {
queryDslVersion = "5.0.0"
}
}
plugins {
//querydsl 추가
id "com.ewerk.gradle.plugins.querydsl" version "1.0.10"
}
dependencies {
//querydsl 추가
implementation "com.querydsl:querydsl-jpa:${queryDslVersion}"
annotationProcessor "com.querydsl:querydsl-apt:${queryDslVersion}"
}
//querydsl 추가
def querydslDir = "$buildDir/generated/querydsl"
querydsl {
jpa = true
querydslSourcesDir = querydslDir
}
sourceSets {
main.java.srcDir querydslDir
}
configurations {
querydsl.extendsFrom compileClasspath
}
compileQuerydsl {
options.annotationProcessorPath = configurations.querydsl
}
build.gradle 설정이 끝나고 나면 변경된 설정이 적용 될 수 있도록 아래와 같은 그래들 버튼을 클릭해준다.
querydsl 사용을 위한 설정은 모두 끝났다.
이제 Q타입을 생성 해보도록 하자.
자바 하위에 entity 파일을 생성 후
Gradle > Tasks > other > compileQuerydsl 을 클릭하여 Q타입이 생성 되는 것 을 확인한다. Q타입은 최초 build.gradle에서 설정하였던 querydslDir 경로에 생성 된다.
Q타입이 생성 된 것이 확인 되면 querydsl을 사용 하기 위한 설정은 모두 끝이다!