From 63ecd95889dedb85b2df6d8c9315d552d7ade541 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EB=B0=95=EC=84=B1=EC=98=81?= Date: Thu, 21 Aug 2025 10:16:41 +0900 Subject: [PATCH] =?UTF-8?q?=ED=94=84=EB=A1=9C=EC=A0=9D=ED=8A=B8=EB=AA=85?= =?UTF-8?q?=20=EC=A0=84=EC=97=AD=EB=B3=80=EC=88=98=20=EC=84=A4=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- build.gradle | 21 ++++++++++++++----- gradle.properties | 10 +++++++++ .../config/DataSourceProxyConfig.java | 2 +- src/main/resources/application-dev.yml | 6 +++--- src/main/resources/application-local.yml | 6 +++--- src/main/resources/application-prd.yml | 6 +++--- src/main/resources/application.yml | 2 +- 7 files changed, 37 insertions(+), 16 deletions(-) create mode 100644 gradle.properties diff --git a/build.gradle b/build.gradle index 8ce6c85..e2045e3 100644 --- a/build.gradle +++ b/build.gradle @@ -154,6 +154,17 @@ dependencies { providedRuntime 'org.springframework.boot:spring-boot-starter-tomcat' } +// ===== 리소스 필터링 설정 ===== +// application*.yml 파일에서 @변수명@ 플레이스홀더를 gradle.properties의 값으로 치환 +processResources { + // application*.yml 파일에서만 @projectName@ 치환 + filesMatching('application*.yml') { + filter { line -> + line.replaceAll('@projectName@', project.property('projectName').toString()) + } + } +} + // ===== 테스트 설정 ===== // JUnit 플랫폼을 사용하여 테스트 실행 (JUnit 5 지원) tasks.named('test') { @@ -161,19 +172,19 @@ tasks.named('test') { } // ===== WAR 파일 설정 ===== -// 생성될 WAR 파일의 이름 지정 +// 생성될 WAR 파일의 이름 지정 (gradle.properties의 프로젝트명 전역변수 사용) war { - archiveFileName = 'IBMS-NEW.war' + archiveFileName = "${projectName}.war" } // ===== bootWar 파일 설정 ===== -// 생성될 bootWar 파일의 이름 지정 +// 생성될 bootWar 파일의 이름 지정 (gradle.properties의 프로젝트명 전역변수 사용) bootWar { - archiveFileName = 'IBMS-NEW-BOOT.war' + archiveFileName = "${projectName}-BOOT.war" } // war 포함 압축 푼 소스 포함, -// ./build/exploded/xit-framework/ +// ./build/exploded/{프로젝트명}/ tasks.register('exploded', Copy) { dependsOn 'war' from zipTree(tasks.war.archiveFile) diff --git a/gradle.properties b/gradle.properties new file mode 100644 index 0000000..6c6e6e6 --- /dev/null +++ b/gradle.properties @@ -0,0 +1,10 @@ +# ???? ?? ?? ?? +# ?????? ????? ???? gradle? application*.yml?? ?? ?? + +# ????? ???? (gradle ??? Spring Boot ???? ?? ??) +projectName=IBMS-NEW + +# Gradle ?? ?? +org.gradle.daemon=true +org.gradle.parallel=true +org.gradle.caching=true \ No newline at end of file diff --git a/src/main/java/egovframework/config/DataSourceProxyConfig.java b/src/main/java/egovframework/config/DataSourceProxyConfig.java index c980611..1e10d6f 100644 --- a/src/main/java/egovframework/config/DataSourceProxyConfig.java +++ b/src/main/java/egovframework/config/DataSourceProxyConfig.java @@ -106,7 +106,7 @@ public class DataSourceProxyConfig { // 프록시 데이터소스 빌더를 사용하여 프록시 데이터소스 생성 return ProxyDataSourceBuilder .create(actualDataSource) - .name("XIT-Framework-DB") // 데이터소스 이름 설정 + .name("IBMS-NEW-DB") // 데이터소스 이름 설정 .listener(loggingListener) // 기본 로깅 리스너 추가 .listener(customListener) // 커스텀 파라미터 바인딩 리스너 추가 .asJson() // JSON 형태로 파라미터 바인딩된 쿼리 출력 diff --git a/src/main/resources/application-dev.yml b/src/main/resources/application-dev.yml index 4137f2f..932da15 100644 --- a/src/main/resources/application-dev.yml +++ b/src/main/resources/application-dev.yml @@ -75,8 +75,8 @@ server: logging: config: classpath:logback-spring.xml file: - path: d:/data/xit-framework/logs - name: xit-framework + path: d:/data/@projectName@/logs + name: '@projectName@' logback: rollingpolicy: max-file-size: 10MB @@ -91,7 +91,7 @@ logging: # File upload configuration file: upload: - path: d:/data/xit-framework/file + path: d:/data/@projectName@/file max-size: 10 # 단일 파일 최대 크기 (MB) max-total-size: 50 # 총 파일 최대 크기 (MB) max-files: 10 # 최대 파일 개수 diff --git a/src/main/resources/application-local.yml b/src/main/resources/application-local.yml index afc8864..4119cb2 100644 --- a/src/main/resources/application-local.yml +++ b/src/main/resources/application-local.yml @@ -75,8 +75,8 @@ server: logging: config: classpath:logback-spring.xml file: - path: d:/data/ibms-new/logs - name: ibms-new + path: d:/data/@projectName@/logs + name: '@projectName@' logback: rollingpolicy: max-file-size: 10MB @@ -91,7 +91,7 @@ logging: # File upload configuration file: upload: - path: d:/data/xit-framework/file + path: d:/data/@projectName@/file max-size: 10 # 단일 파일 최대 크기 (MB) max-total-size: 50 # 총 파일 최대 크기 (MB) max-files: 10 # 최대 파일 개수 diff --git a/src/main/resources/application-prd.yml b/src/main/resources/application-prd.yml index 2b41168..969db6b 100644 --- a/src/main/resources/application-prd.yml +++ b/src/main/resources/application-prd.yml @@ -75,8 +75,8 @@ server: logging: config: classpath:logback-spring.xml file: - path: /data/xit-framework/logs - name: xit-framework + path: /data/@projectName@/logs + name: '@projectName@' logback: rollingpolicy: max-file-size: 10MB @@ -98,7 +98,7 @@ logging: # File upload configuration file: upload: - path: /data/xit-framework/file + path: /data/@projectName@/file max-size: 10 # 단일 파일 최대 크기 (MB) max-total-size: 50 # 총 파일 최대 크기 (MB) max-files: 10 # 최대 파일 개수 diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index bb87abc..f3f0878 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -19,7 +19,7 @@ spring: profiles: active: local application: - name: IBMS-NEW + name: '@projectName@' mvc: view: prefix: /WEB-INF/views/