Web.xml
1. 한글 인코딩 필터
<!-- 모든 url 통과 후 한글을 UTF-8 로 인코딩해주는 필터 태그 -->
<!-- 따로 클래스로 만들 수도 있다. -->
<filter>
<!-- CharacterEncodingFilter 클래스에 encodingFilter 라는 별칭을 붙인다. -->
<filter-name>encodingFilter</filter-name>
<filter-class>
org.springframework.web.filter.CharacterEncodingFilter
</filter-class>
<!-- 모든 인코딩 방식은 UTF-8 로 이루어진다. -->
<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>
<!-- / 이하 모든 url 은 encodingFilter 를 거친다. -->
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
pom.xml
<!-- ojbc6.jar(lib folder), mybatis, spring-mybatis, spring-jdbc, common-dbcp -->
<!-- 순수 mybatis -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.4.6</version>
</dependency>
<!-- Spring에서 Mybatis를 사용할 수 있도록 하는 라이브러리 -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>1.3.2</version>
</dependency>
<!-- Spring에서 JDBC를 사용하는데 DataSource를 사용하도록 해주는 라이브러리
DBConnectionPool 을 사용하기 위해서는 DataSource 클래스가 필요하다. -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>${org.springframework-version}</version>
<!-- 위 properties의 지정한 Spring 버전을 따라감 -->
</dependency>
<!-- 커넥션 풀 기능을 사용하기 위한 라이브러리 -->
<!-- 데이터베이스 커넥션 풀이란? (DBCP)
DB연결이 필요할 때마다 생성하여 접속하는것이 아니라
Connection Pool에 연결을 생성하여 놓고 재사용하는 방식
-->
<dependency>
<groupId>commons-dbcp</groupId>
<artifactId>commons-dbcp</artifactId>
<version>1.4</version>
</dependency>
<!-- GSON -->
<!-- <https://mvnrepository.com/artifact/com.google.code.gson/gson> -->
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.8.5</version>
</dependency>
root-context.xml
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"></property>
<property name="url" value="jdbc:oracle:thin:@localhost:1521:xe"></property>
<property name="username" value="SPRING"></property>
<property name="password" value="SPRING"></property>
</bean>
<bean id="sqlSession" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="configLocation" value="classpath:mybatis-config.xml"></property>
<property name="dataSource" ref="dataSource"></property>
</bean>
<bean id="sqlSessionTemplate" class="org.mybatis.spring.SqlSessionTemplate">
<constructor-arg ref="sqlSession"></constructor-arg>
</bean>