Back-End/백엔드 관련 정리

spring boot 3.X.X 이상 버전 사용과 queryDsl 설정

얄루몬 2023. 2. 2. 11:38

  • 기본적으로 스프링부트 3버전 이상은 javax가 아닌 jakarta가 관리하기 때문에 이에 맞게 pom(maven기준) 설정을 해주어야 한다.
<dependency>
    <groupId>com.querydsl</groupId>
    <artifactId>querydsl-apt</artifactId>
    <version>${querydsl.version}</version>
    <scope>provided</scope>
    <classifier>jakarta</classifier>
</dependency>

<dependency>
    <groupId>com.querydsl</groupId>
    <artifactId>querydsl-jpa</artifactId>
    <version>${querydsl.version}</version>
    <classifier>jakarta</classifier>
</dependency>

<dependency>
    <groupId>jakarta.annotation</groupId>
    <artifactId>jakarta.annotation-api</artifactId>
</dependency>
<dependency>
    <groupId>jakarta.persistence</groupId>
    <artifactId>jakarta.persistence-api</artifactId>
</dependency>
  • classfier 설정에 jakarta를 넣어주고 사용해야 한다. (기본 값이 javax이기 때문에 entity를 못읽는등의 문제로 q class 생성이 안 되고 JPAQueryFactory 빈등록 시에 엔티티 매니저 타입이 문제가 되기 때문이다.

https://velog.io/@johnsuhr4542/Springboot-3-Spring-framework-6-QueryDSL