|
|
|
|
@ -86,8 +86,6 @@ XIT Framework는 Spring Boot 기반의 웹 애플리케이션 프레임워크로
|
|
|
|
|
| Apache POI | 5.3.0 | 엑셀 파일 처리 라이브러리 |
|
|
|
|
|
| Quartz | - | 배치 스케줄링 라이브러리 |
|
|
|
|
|
| jsqlparser | 4.5 | SQL 파싱 라이브러리 |
|
|
|
|
|
| Spring Mail | - | 메일 발송 라이브러리 |
|
|
|
|
|
| openhtmltopdf | 1.0.10 | HTML을 PDF로 변환하는 라이브러리 |
|
|
|
|
|
|
|
|
|
|
## 3. 프로젝트 구조
|
|
|
|
|
|
|
|
|
|
@ -131,7 +129,7 @@ go.kr.project/
|
|
|
|
|
│ ├── menu/ # 메뉴 관리
|
|
|
|
|
│ ├── role/ # 역할 관리
|
|
|
|
|
│ └── user/ # 사용자 관리
|
|
|
|
|
└── template/ # 템플릿 관련 기능 (예: PDF, Excel)
|
|
|
|
|
└── template/ # 템플릿 관련 기능 (예: Excel)
|
|
|
|
|
|
|
|
|
|
egovframework/
|
|
|
|
|
├── config/ # 프레임워크 설정
|
|
|
|
|
@ -276,9 +274,10 @@ file:
|
|
|
|
|
|
|
|
|
|
<h3 id="build-gradle">4.5 build.gradle</h3>
|
|
|
|
|
|
|
|
|
|
프로젝트의 빌드 및 의존성을 정의하는 파일입니다.
|
|
|
|
|
프로젝트의 빌드 및 주요 의존성을 정의합니다.
|
|
|
|
|
|
|
|
|
|
```gradle
|
|
|
|
|
// 1. 플러그인 설정
|
|
|
|
|
plugins {
|
|
|
|
|
id 'org.springframework.boot' version '2.7.18'
|
|
|
|
|
id 'io.spring.dependency-management' version '1.0.15.RELEASE'
|
|
|
|
|
@ -286,99 +285,59 @@ plugins {
|
|
|
|
|
id 'war'
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 2. 기본 정보
|
|
|
|
|
group = 'go.kr.project'
|
|
|
|
|
version = '0.0.1-SNAPSHOT'
|
|
|
|
|
|
|
|
|
|
java {
|
|
|
|
|
sourceCompatibility = JavaVersion.VERSION_1_8
|
|
|
|
|
targetCompatibility = JavaVersion.VERSION_1_8
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
repositories {
|
|
|
|
|
mavenCentral()
|
|
|
|
|
maven { url 'https://maven.egovframe.go.kr/maven/' }
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 3. 라이브러리 버전 관리
|
|
|
|
|
ext {
|
|
|
|
|
tomcatVersion = '9.0.78'
|
|
|
|
|
tilesVersion = '3.0.8'
|
|
|
|
|
mybatisVersion = '2.3.1'
|
|
|
|
|
commonsTextVersion = '1.10.0'
|
|
|
|
|
egovFrameVersion = '4.3.0'
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 4. 주요 의존성
|
|
|
|
|
dependencies {
|
|
|
|
|
// 스프링 부트 의존성
|
|
|
|
|
// 스프링 부트
|
|
|
|
|
implementation 'org.springframework.boot:spring-boot-starter-web'
|
|
|
|
|
implementation 'org.springframework.boot:spring-boot-starter-validation'
|
|
|
|
|
implementation 'org.springframework.boot:spring-boot-starter-aop'
|
|
|
|
|
implementation 'org.springframework.boot:spring-boot-starter-jdbc'
|
|
|
|
|
implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
|
|
|
|
|
|
|
|
|
|
// 전자정부 프레임워크 의존성
|
|
|
|
|
implementation("org.egovframe.rte:org.egovframe.rte.fdl.cmmn:${egovFrameVersion}") {
|
|
|
|
|
exclude group: 'org.apache.logging.log4j', module: 'log4j-slf4j-impl'
|
|
|
|
|
}
|
|
|
|
|
implementation("org.egovframe.rte:org.egovframe.rte.ptl.mvc:${egovFrameVersion}") {
|
|
|
|
|
exclude group: 'org.apache.logging.log4j', module: 'log4j-slf4j-impl'
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 로깅 의존성
|
|
|
|
|
implementation 'ch.qos.logback:logback-classic'
|
|
|
|
|
implementation 'ch.qos.logback:logback-core'
|
|
|
|
|
implementation 'org.slf4j:slf4j-api'
|
|
|
|
|
implementation 'org.springframework.boot:spring-boot-starter-quartz' // Quartz 스케줄러
|
|
|
|
|
|
|
|
|
|
// 서블릿 & JSP 관련 의존성
|
|
|
|
|
implementation 'javax.servlet:jstl'
|
|
|
|
|
// 전자정부 프레임워크
|
|
|
|
|
implementation "org.egovframe.rte:org.egovframe.rte.ptl.mvc:${egovFrameVersion}"
|
|
|
|
|
|
|
|
|
|
// 톰캣 설정
|
|
|
|
|
implementation "org.apache.tomcat.embed:tomcat-embed-core:${tomcatVersion}"
|
|
|
|
|
implementation "org.apache.tomcat.embed:tomcat-embed-el:${tomcatVersion}"
|
|
|
|
|
implementation "org.apache.tomcat.embed:tomcat-embed-jasper:${tomcatVersion}"
|
|
|
|
|
|
|
|
|
|
// 타일즈 의존성
|
|
|
|
|
implementation "org.apache.tiles:tiles-jsp:${tilesVersion}"
|
|
|
|
|
implementation "org.apache.tiles:tiles-core:${tilesVersion}"
|
|
|
|
|
implementation "org.apache.tiles:tiles-api:${tilesVersion}"
|
|
|
|
|
implementation "org.apache.tiles:tiles-servlet:${tilesVersion}"
|
|
|
|
|
implementation "org.apache.tiles:tiles-el:${tilesVersion}"
|
|
|
|
|
|
|
|
|
|
// 데이터 액세스 의존성
|
|
|
|
|
// 데이터베이스
|
|
|
|
|
implementation "org.mybatis.spring.boot:mybatis-spring-boot-starter:${mybatisVersion}"
|
|
|
|
|
implementation 'org.mariadb.jdbc:mariadb-java-client'
|
|
|
|
|
|
|
|
|
|
// 유틸리티 의존성
|
|
|
|
|
implementation "org.apache.commons:commons-text:${commonsTextVersion}"
|
|
|
|
|
|
|
|
|
|
// EXCEL
|
|
|
|
|
implementation 'org.apache.poi:poi:5.3.0'
|
|
|
|
|
implementation 'org.apache.poi:poi-ooxml:5.3.0'
|
|
|
|
|
// 뷰 (JSP & Tiles)
|
|
|
|
|
implementation 'javax.servlet:jstl'
|
|
|
|
|
implementation "org.apache.tiles:tiles-jsp:${tilesVersion}"
|
|
|
|
|
|
|
|
|
|
// Swagger UI
|
|
|
|
|
implementation 'org.springdoc:springdoc-openapi-ui:1.7.0'
|
|
|
|
|
implementation 'org.springdoc:springdoc-openapi-webmvc-core:1.7.0'
|
|
|
|
|
// 유틸리티
|
|
|
|
|
implementation 'org.apache.commons:commons-text:1.10.0'
|
|
|
|
|
implementation 'org.apache.poi:poi:5.3.0' // Excel
|
|
|
|
|
implementation 'org.springdoc:springdoc-openapi-ui:1.7.0' // Swagger
|
|
|
|
|
|
|
|
|
|
// 개발 도구 의존성
|
|
|
|
|
// 개발용
|
|
|
|
|
compileOnly 'org.projectlombok:lombok'
|
|
|
|
|
annotationProcessor 'org.projectlombok:lombok'
|
|
|
|
|
developmentOnly 'org.springframework.boot:spring-boot-devtools'
|
|
|
|
|
|
|
|
|
|
// 테스트 의존성
|
|
|
|
|
// 테스트
|
|
|
|
|
testImplementation 'org.springframework.boot:spring-boot-starter-test'
|
|
|
|
|
|
|
|
|
|
// 배포 관련 의존성
|
|
|
|
|
providedCompile "org.apache.tomcat:tomcat-servlet-api:${tomcatVersion}"
|
|
|
|
|
|
|
|
|
|
// 배포용
|
|
|
|
|
providedRuntime 'org.springframework.boot:spring-boot-starter-tomcat'
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
tasks.named('test') {
|
|
|
|
|
useJUnitPlatform()
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 5. 빌드 결과물 설정
|
|
|
|
|
war {
|
|
|
|
|
archiveFileName = 'xit-framework.war'
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
bootWar {
|
|
|
|
|
archiveFileName = 'xit-framework-boot.war'
|
|
|
|
|
}
|
|
|
|
|
|