SpringBoot 3.x.xに queryDSL追加

2023/06/29に公開

dependency追加

SpringBootにqueryDSL依存性(dependency)追加

  • JPAと一緒に使うのが前提
build.gradle
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"

compile時生成されたqファイルをgradle cleanで除去

build.gradle
clean {
	delete file('src/main/generated')
}

設定用クラス生成

別途Configクラスを生成してコンテナに登録

@Configuration
public class QueryDSLConfig {
    @PersistenceContext
    public EntityManager em;

    @Bean
    public JPAQueryFactory jpaQueryFactory() {
        return new JPAQueryFactory(em);
    }
}

build

gradle tab → build → classes実行

buildフォルダに生成されたのを確認

Discussion