반응형
프로젝트의 생성 및 준비
- Spring Leagacy Project의 생성
- pom.xml에서 스프링 버전 변경
- spring-test, spring-jdbc, spring-tx 추가
- junit 버전 변경
- Servlet 버전 변경
- HikariCP, MyBatis, mybatis-spring, Log4jdbc 추가
- JDBC 드라이버 프로젝트 내 추가
- 기타 Lombok의 설정
예제 프로젝트 구성
예제를 위한 프로젝트는 'ex02' 이름으로 생성하고, 'Spring Legacy Project'로 생성합니다. 프로젝트를 생성한 후에는 pom.xml의 수정, 데이터베이스 관련 처리, 스프링 MVC 처리와 같은 순서로 진행합니다.
pom.xml의 수정
프로젝트를 생성한 후 pom.xml에서는 스프링의 버전과 Java 버전 등을 수정합니다.
▶ Spring의 version 변경
<properties>
<java-version>1.6</java-version>
<org.springframework-version>5.2.7.RELEASE</org.springframework-version>
<org.aspectj-version>1.6.10</org.aspectj-version>
<org.slf4j-version>1.6.6</org.slf4j-version>
</properties>
스프링 관련해서 추가적인 라이브러리로는 spring-tx, spring-jdbc, spring-test가 필요합니다.
▶ 스프링 관련 라이브러리
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${org.springframework-version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>${org.springframework-version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-tx</artifactId>
<version>${org.springframework-version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>${org.springframework-version}</version>
</dependency>
MyBatis를 이용할 것이므로 HikariCP, MyBatis, mybatis-spring, Log4jdbc 라이브러리들도 추가합니다.
<!-- https://mvnrepository.com/artifact/com.zaxxer/HikariCP -->
<dependency>
<groupId>com.zaxxer</groupId>
<artifactId>HikariCP</artifactId>
<version>3.4.5</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.6</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis-spring -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>2.0.6</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.bgee.log4jdbc-log4j2/log4jdbc-log4j2-jdbc4.1 -->
<dependency>
<groupId>org.bgee.log4jdbc-log4j2</groupId>
<artifactId>log4jdbc-log4j2-jdbc4.1</artifactId>
<version>1.16</version>
</dependency>
테스트와 Lombok을 위해서 jUnit 버전을 변경하고, Lombok을 추가합니다, jUnit의 경우 4.7로 설정되어 있으므로 반드시 기존 설정을 변경해 주도록 합니다.
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
Servlet 3.1(혹은 3.0)을 제대로 사용하기 위해서는 pom.xml에 있던 서블릿 2.5버전이 아닌 3.0 이상으로 수정합니다.
<!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>4.0.1</version>
<scope>provided</scope>
</dependency>
Servlet 3.1 버전을 제대로 활용하고, JDK8의 기능을 활용하기 위해서 Maven 관련 Java 버전을 1.8로 수정합니다.
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.5.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<compilerArgument>-Xlint:all</compilerArgument>
<showWarnings>true</showWarnings>
<showDeprecation>true</showDeprecation>
</configuration>
</plugin>
'ex02' 프로젝트를 선택하고 Maven > Update Project를 실행합니다.
반응형
'Back-end > Spring Web Project' 카테고리의 다른 글
[Spring Web Project] 영속/비즈니스 계층의 CRUD 구현 - 영속 계층의 구현 준비 (0) | 2023.11.29 |
---|---|
[Spring Web Project] 스프링 MVC 프로젝트의 기본 구성(2) - 테이블 생성 (0) | 2023.11.27 |
[Spring Web Project] 스프링 MVC의 Controller(4) - Controller의 예외 처리 (0) | 2023.11.24 |
[Spring Web Project] 스프링 MVC의 Controller(3) - 파일 업로드 처리 (0) | 2023.11.24 |
[Spring Web Project] 스프링 MVC의 Controller(2) - Controller의 리턴 타입 (1) | 2023.11.21 |