IDE/Spring

[Spring] pom.xml

Ma_Sand 2022. 6. 15. 23:30
반응형

pom.xml의 구조(프로젝트에 대한 정보)

<modelVersion>4.0.0</modelVersion>
<groupId>com.tistory</groupId>
<artifactId>spring</artifactId>
<name>springProject</name>
<packaging>war</packaging>
<version>1.0.0-BUILD-SNAPSHOT</version>

 

 - groupId: 2번째 레벨까지의 패키지 구조

 - artifactId: 3번째 레벨의 패키지명(프로그램명)

 - packaing: 배포할 때 압축형식

 

 

properties

이 문서에서 사용할 환경설정 내용들을 담은 변수로, ${변수명}으로 해당 값을 불러올 수 있다.

 

<properties>
    <java-version>1.8</java-version>
    <org.springframework-version>5.3.20</org.springframework-version>
    <org.aspectj-version>1.6.10</org.aspectj-version>
    <org.slf4j-version>1.6.6</org.slf4j-version>
</properties>

 

 - java-version은 1.8 버전로 변경한다.

 - org.springframework-version은 5.3.20 버전으로 변경한다.

 

 

외부 repository

기본 저장소에서 다운받지 못할 경우에 직접 다운받고자 하는 저장소를 등록한다.

 

<repositories>
    <repository>
        <id>Datanucleus</id>
        <url>http://www.datanucleus.org/downloads/maven2/</url>
    </repository>
</repositories>

 

 - id: 저장소 이름

 - url: 해당 저장소 경로

 

 

dependencies

프로젝트에서 사용할 라이브러리들을 담는다.

 

1. DB 관련 라이브러리

 1) ojdbc6

<dependency>
    <groupId>oracle</groupId>
    <artifactId>ojdbc6</artifactId>
    <version>11.2.0.3</version>
</dependency>

 

 2) spring-jdbc

<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-jdbc</artifactId>
    <version>${org.springframework-version}</version>
</dependency>

 

 3) mybatis

<dependency>
    <groupId>org.mybatis</groupId>
    <artifactId>mybatis</artifactId>
    <version>3.5.10</version>
</dependency>

 

 4) mybatis-spring

<dependency>
    <groupId>org.mybatis</groupId>
    <artifactId>mybatis-spring</artifactId>
    <version>2.0.7</version>
</dependency>

 

 5) Connection Pool

<dependency>
    <groupId>commons-dbcp</groupId>
    <artifactId>commons-dbcp</artifactId>
    <version>1.4</version>
</dependency>

 

 

2. lombok

<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <version>1.18.12</version>
    <scope>provided</scope>
</dependency>

 

 

3. spring security(core, web, config)

<dependency>
    <groupId>org.springframework.security</groupId>
    <artifactId>spring-security-core</artifactId>
    <version>5.7.1</version>
</dependency>
				
<dependency>
    <groupId>org.springframework.security</groupId>
    <artifactId>spring-security-web</artifactId>
    <version>5.7.1</version>
</dependency>
				
<dependency>
    <groupId>org.springframework.security</groupId>
    <artifactId>spring-security-config</artifactId>
    <version>5.7.1</version>
</dependency>

 

 

4. 파일 업로드

<dependency>
    <groupId>commons-fileupload</groupId>
    <artifactId>commons-fileupload</artifactId>
    <version>1.3.3</version>
</dependency>
		
<dependency>
    <groupId>commons-io</groupId>
    <artifactId>commons-io</artifactId>
    <version>2.11.0</version>
</dependency>

 

 

5. JSON

<dependency>
    <groupId>com.googlecode.json-simple</groupId>
    <artifactId>json-simple</artifactId>
    <version>1.1.1</version>
</dependency>

 

 

6. GSON

<dependency>
    <groupId>com.google.code.gson</groupId>
    <artifactId>gson</artifactId>
    <version>2.8.5</version>
</dependency>
반응형