티스토리 뷰
build.gradle
plugins {
id 'org.springframework.boot' version '2.6.7'
// id 'org.springframework.boot' version '2.5.12' //feign 사용을 하려면 버전이 2.5까지만 가능 2.6.x 시 오류 발생
id 'io.spring.dependency-management' version '1.0.11.RELEASE'
}
group = 'com.project'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '11'
// Querydsl 사용을 위한 설정
def querydslVersion = '4.3.1'
// Querydsl end
repositories {
mavenCentral()
}
dependencies {
implementation 'org.springframework.boot:spring-boot-starter-batch'
implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
implementation 'org.springframework.boot:spring-boot-starter-quartz'
implementation 'org.springframework.boot:spring-boot-starter-web'
implementation 'org.projectlombok:lombok:1.18.22'
annotationProcessor('org.projectlombok:lombok'); // <- 없으면 log.info 에러 발생
developmentOnly 'org.springframework.boot:spring-boot-devtools'
runtimeOnly 'com.h2database:h2'
testImplementation 'org.springframework.boot:spring-boot-starter-test'
testImplementation 'org.springframework.batch:spring-batch-test'
//feign 사용 시 필요
/*
implementation "org.springframework.cloud:spring-cloud-starter-openfeign"
implementation group: 'io.github.openfeign', name: 'feign-gson', version: '11.0'
*/
// implementation "com.fasterxml.jackson.core:jackson-core:2.13.2" //JSONParser 사용시 필요
// implementation 'com.fasterxml.jackson.core:jackson-annotations:2.13.2'
// implementation 'com.fasterxml.jackson.core:jackson-databind:2.13.2.2'
// implementation 'com.fasterxml.jackson.module:jackson-module-kotlin:2.13.2'
// Querydsl 사용을 위한 설정
implementation group: 'com.querydsl', name: 'querydsl-jpa', version: querydslVersion
implementation group: 'com.querydsl', name: 'querydsl-apt', version: querydslVersion
implementation group: 'com.querydsl', name: 'querydsl-core', version: querydslVersion
annotationProcessor group: 'com.querydsl', name: 'querydsl-apt', version: querydslVersion
//annotationProcessor group: 'com.querydsl', name: 'querydsl-apt', version: querydslVersion, classifier: 'jpa'
annotationProcessor("jakarta.persistence:jakarta.persistence-api")
annotationProcessor("jakarta.annotation:jakarta.annotation-api")
// Querydsl end
implementation 'com.github.gavlyukovskiy:p6spy-spring-boot-starter:1.8.0' /* jpa query log */
}
//feign 사용 시 위해 필요
/*
dependencyManagement {
imports {
mavenBom "org.springframework.cloud:spring-cloud-dependencies:2020.0.3"
}
}
*/
tasks.named('test') {
useJUnitPlatform()
}
// Querydsl
clean {
delete file('src/main/generated') // <--인텔리제이 Annotation processor 생성물 생성위치
}
// Querydsl end
application.properties
server.port = 8081
#H2 ;MODE=LEGACY 안붙이면 오류 발생됨
#spring.datasource.url=jdbc:h2:tcp://localhost/~/test;MODE=LEGACY
#spring.datasource.driverClassName=org.h2.Driver
#spring.datasource.username=sa
#spring.datasource.password=
# MySQL
#spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
#spring.datasource.url=jdbc:mysql://192.168.62.22:3306/mng?useSSL=false&useUnicode=true&serverTimezone=Asia/Seoul
#spring.datasource.username=OOO
#spring.datasource.password=OOOO
# mariadb
spring.datasource.driver-class-name=org.mariadb.jdbc.Driver
spring.datasource.url=jdbc:mariadb://192.168.62.22:3306/OOOO
spring.datasource.username=OOOO
spring.datasource.password=OOOO
#하이버네이트 설정
spring.jpa.hibernate.ddl-auto=none
#create 기존 테이블 삭제 후 다시 생성(DROP + CREATE)
#create-drop : create와 같으나 종료시점에 테이블 DROP(테스트에서 사용하면 도움됨)
#update : 변경분만 반영(운영DB에는 사용하면 안됨)
#validate : 엔티티와 테이블이 정상 매핑되었는지만 확인
#none : 사용하지 않음
#운영 장비에는 절대 create, create-drop, update 사용하면 안된다.
#개발 초기 단계는 create 또는 update
#테스트 서버는 update 또는 validate
#스테이징과 운영 서버는 validate 또는 none 웬만하면 쓰면 안된다.
#하이버네이트 로그 관련 (필수)
spring.jpa.generate-ddl=true
spring.jpa.properties.hibernate.format_sql=true
spring.jpa.show-sql=true
spring.jpa.properties.hibernate.highlight_sql=true
logging.level.org.hibernate.type.descriptor.sql=trace
# jpa Query log
decorator.datasource.p6spy.enable-logging=true
decorator.datasource.p6spy.multiline=true
Intellij
1. Spring Boot DevTools 사용을 위한 설정
1) 상단 File > Setting 메뉴 (또는 단축키 Ctrl+Alt+S) 클릭
- Build, Exeution, Deployment > Compiler > Build project autiomaically 체크
- Advanced Settings > Allow auto-make to start even if developed application is currently running 체크
반응형
'프로그래밍 > spring Boot' 카테고리의 다른 글
[Spring Boot] 스프링부트 #1 - 프로젝트 생성하기 (정리중....) (1) | 2021.05.19 |
---|
댓글