ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 스프링부트 3.1.2 Querydsl 설정
    개발/JPA 2023. 8. 2. 14:17

    스프링부트 3.x.x 설정이 querydsl 설정이 스프링부트 2.x.x에 비해 많이 간결해졌다. 지금 프로젝트가 3.1.2이므로 여기에 기준한 설정이다.

     

    build.gradle

        implementation "com.querydsl:querydsl-jpa:${dependencyManagement.importedProperties['querydsl.version']}:jakarta"
        annotationProcessor "com.querydsl:querydsl-apt:${dependencyManagement.importedProperties['querydsl.version']}:jakarta"
        annotationProcessor "jakarta.annotation:jakarta.annotation-api"
        annotationProcessor "jakarta.persistence:jakarta.persistence-api"

    스프링부트2 버전에서는 Q 파일을 만드는 컴파일 옵션 등이 필요했는데 3버전부터는 필요 없는 것으로 보인다. 프로젝트 전체를 빌드하면 build에 Q파일이 생긴다.

    위의 이미지처럼 경로가 설정되므로 import 할 때도 다음과 같이 나온다.

    import study.querydsl.entity.QHello;

     

    테스트도 잘된다.

    @Test
    void contextLoads() {
        Hello hello = new Hello();
        em.persist(hello);
    
        JPAQueryFactory query = new JPAQueryFactory(em);
        QHello qHello = new QHello("h");
    
        System.out.println("========START");
        Hello result = query
                .selectFrom(qHello)
                .fetchOne();
        System.out.println("========END");
        assertThat(result).isEqualTo(hello);
    }

    '개발 > JPA' 카테고리의 다른 글

    [JPA][Archiving] in_clause_parameter_padding 옵션  (0) 2024.03.03
    Update  (0) 2024.03.03
    페치 조인의 한계과 극복(요약 ver.)  (0) 2023.07.25
    MVCC=TRUE  (0) 2023.07.18
    일대다 연관관계를 지양하자  (0) 2023.07.18

    댓글

Designed by Tistory.