-
[QueryDSL] QueryDSL 스프링부트 3.0 이상 버전 환경 설정Java 2023. 12. 15. 14:27
1. 프로젝트 생성
- 스프링 부트 스타터(https://start.spring.io/)

해당폴더 실행시 자바 버전을 맞춰 주어야 한다.
2. 빌드 설정
인텔리 제이는 자바에서 실행 하는게 아니라 gradle에게 실행을 위임하기 때문에 빌드가 드림
따라서 빌드 및 실행을 인텔리제이 로 바꾸면 빌드 및 실행속도가 빨라짐

3. 롬복 셋팅
만약 처음 세팅이라면 롬복을 플러그인에서 다운 받아야함

어노테이션 처리 활성화
설정 -> 빌드 실행 배포 -> 컴파일러 -> 어노테이션 프로세서 -> 어노테이션 처리 활성화
를 해주어야 롬복이 정상 작동됨 이후 재시작을 하면 완료

4.build.gradle
스프링부트 3.0 이상 버전
plugins { id 'java' id 'org.springframework.boot' version '3.2.0' id 'io.spring.dependency-management' version '1.1.4' } group = 'study' version = '0.0.1-SNAPSHOT' sourceCompatibility = '17' configurations { compileOnly { extendsFrom annotationProcessor } } repositories { mavenCentral() } dependencies { implementation 'org.springframework.boot:spring-boot-starter-data-jpa' implementation 'org.springframework.boot:spring-boot-starter-web' implementation 'com.github.gavlyukovskiy:p6spy-spring-boot-starter:1.9.0' compileOnly 'org.projectlombok:lombok' runtimeOnly 'com.h2database:h2' annotationProcessor 'org.projectlombok:lombok' testImplementation 'org.springframework.boot:spring-boot-starter-test' //JdbcTemplate 추가 //implementation 'org.springframework.boot:spring-boot-starter-jdbc' //MyBatis 추가 implementation 'org.mybatis.spring.boot:mybatis-spring-boot-starter:2.2.0' //JPA, 스프링 데이터 JPA 추가 implementation 'org.springframework.boot:spring-boot-starter-data-jpa' //test 롬복 사용 testCompileOnly 'org.projectlombok:lombok' testAnnotationProcessor 'org.projectlombok:lombok' //H2 데이터베이스 추가 runtimeOnly 'com.h2database:h2' compileOnly 'org.projectlombok:lombok' annotationProcessor 'org.projectlombok:lombok' testImplementation 'org.springframework.boot:spring-boot-starter-test' //Querydsl 추가 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" } tasks.named('test') { useJUnitPlatform() } clean { delete file('src/main/generated') }build.gradle을 설정하고 실행시 querydsl을 사용하기 위해 entity를 참조한 해당 엔티티가 생성됨
해당 폴더는 깃에 올라가지 않게 설정 해야함
querydsl은 해당 entity를 사용해서 쿼리문을 사용

'Java' 카테고리의 다른 글
[JPA] 스프링 부트 JPA 기본 설정 (0) 2023.12.15 [Java] 인터페이스(interface) (0) 2023.09.04 [Java] 템플릿 메서드 (0) 2023.09.04 [Java] 추상 클래스 (0) 2023.09.04 [Java] 다형성 (0) 2023.08.30