-
SpringBoot - QueryDSL 환경세팅서버 & 프레임워크/Spring & SpringBoot 2025. 6. 7. 13:56
현재 사용하는 SpringBoot 버전 3.3.5 이다.
QueryDSL 5.0.0 버전부터는 javax가 아닌 jakarta Persistence 기반이기 때문에
jakarta EE 기반인 3.x.x 버전과 호환이 된다.그래서 5.0.0 버전으로 세팅했다.
implementation 'com.querydsl:querydsl-jpa:5.0.0:jakarta' annotationProcessor "com.querydsl:querydsl-apt:5.0.0:jakarta" annotationProcessor "jakarta.annotation:jakarta.annotation-api" annotationProcessor "jakarta.persistence:jakarta.persistence-api"
build.gradle > dependencies에 이와같이 추가하면 된다.
추가하고나서 인텔리제이 우측상단 Gradle에서 build > clean 후에 build 하고나면
build/generated 폴더에 Q클래스가 생성되는것을 확인할 수 있다.
그런데 build/generated 폴더에 생성되었기 때문에 SpringBoot에서 import를 하지 못한다.
그렇기 때문에 추가적인 설정이 필요하다.
def generated = 'src/main/generated' // querydsl QClass 파일 생성 위치를 지정 tasks.withType(JavaCompile) { options.generatedSourceOutputDirectory = file(generated) } // java source Set 에 querydsl QClass 위치 추가 sourceSets { main.java.srcDirs += "$projectDir/src/main/generated" } // build clean 시에 QClass 디렉토리 삭제 clean { delete file(generated) }
이렇게 설정해주면 /src/main/generated에 Q클래스들이 만들어지게되고,
자동적으로 import 할 수 있게된다.
'서버 & 프레임워크 > Spring & SpringBoot' 카테고리의 다른 글