New -> Legacy Project -> Spring MVC Project(프로젝트 명) 입력 후 Next -> 패키지 명 입력 -> Finish
Java : 11
Spring : 5.2.22.RELEASE
Maven 1.8
pom.xml을 실행 후 Java-version을 11
Spring-framework-version을 5.2.22 RELEASE 버전으로 변경
스크롤을 내린 후 maven-compiler-plugin의 source와 target을 1.8로 변경
생성한 Project에서 우클릭 -> Properties
Java Compiler -> Compiler compliance level을 수정 후 Apply(Use 체크를 해제 한 후 본인에게 맞는 버전 적용)
Java Build Path -> Edit ->(현재 사용하고 있는 버전으로 수정) 후 Apply
Project Facts -> Java 버전을 현재 사용하고 있는 버전(저는 11을 사용중입니다.) 을 바꾼 후 Runtimes 탭의
Apache Tomcat v9.0(본인에게 맞는 버전)을 클릭 후 Apply
mysql-connector-java-8.0.29.jar
파일 있는지 확인<dependency>
추가)실행한 pom.xml 파일의 하단에서 Dependencies 탭 클릭 후 Add(dependency 추가)
spring JDBC 의존성 : spring-jdbc 검색 후 5.2.22 RELEASE[jar] 선택 후 OK
간혹 검색이 되지 않는 경우 pom.xml의 <dependencies>
탭 안에 아래 코드를 소스 안에 추가
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>5.2.22.RELEASE</version>
</dependency>
Connection Pool 의존성 : commons-dbcp
소스 코드
<dependency>
<groupId>commons-dbcp</groupId>
<artifactId>commons-dbcp</artifactId>
<version>1.4</version>
</dependency>
mysql 의존성 : mysql-connector 8.0.29
소스코드
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.29</version>
</dependency>
Mybatis / mybatis-spring 의존성
Mybatis 3.5.10
Mybatis 소스 코드
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.10</version>
</dependency>
Mybatis-spring 2.0.7
Mybatis-spring 소스코드
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>2.0.7</version>
</dependency>
위의 과정을 다 거쳤다면,
추가 후 저장한 후에 pom.xml의 소스 창을 확인합니다.
성공적으로 추가한 것을 알 수 있습니다.
아래 코드를 복사하여 web.xml </web-app>
안에 넣어 추가하여
한글 출력을 잘 나오게 합니다.
<!-- 한글설정 -->
<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>
org.springframework.web.filter.CharacterEncodingFilter
</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- 한글설정 END -->
src/main/resource - database 폴더 생성 - file -> jdbc.properties
spring 폴더 생성 - Spring bean Configuration file 생성 -> application-config
db연결을 위해 아래 코드를 jdbc.properties 파일에 작성합니다.
현재 저는 mySql의 root 계정과 패스워드를 사용중이며
3306 호스트의 springs 테이블을 기본 값으로 적용했습니다.
Application-config.xml 생성 후 하단 Namespaces 탭에서 beans, context, mybatis-spring을 체크합니다.
생성하기 전에 Next에서 체크할 수 있으나 여기서도 수정이 가능합니다.
연동 소스코드
<context:property-placeholder location="classpath:database/jdbc.properties"/>
<context:component-scan base-package="com.spring_mvc.mybatis" />
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName" value="${jdbc.driverClassName}" />
<property name="url" value="${jdbc.url}" />
<property name="username" value="${jdbc.username}" />
<property name="password" value="${jdbc.password}" />
</bean>
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<property name="mapperLocations" value="classpath:com/spring_mvc/mybatis/**/*.xml" />
</bean>
<mybatis-spring:scan base-package="com.spring_mvc.mybatis.dao"/>
- web.xml에 변경된 내용 설정
- application-config.xml 사용한다고 설정
마무리 되었다면 아래 결과와 같이 정상적으로 작동합니다.