Spring과 MyBatis를 연결하기 위해 몇 가지 설정 파일이 필요하다-
1.pom.xml
Pom 파일에 MyBatis 관련 maven(?) 등록
1
2
3
4
5
6
7
8
9
10
11 | <!--MyBatis -->
<dependency>
<groupid>org.mybatis</groupid>
<artifactid>mybatis</artifactid>
<version>3.2.5</version>
</dependency>
<dependency>
<groupid>org.mybatis</groupid>
<artifactid>mybatis-spring</artifactid>
<version>1.2.2</version>
</dependency>
|
2.MapperConfig.xml
MyBatis 연결 설정과 VO(DTO) 타입 설정, Mapper 등록을 한다-
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 | <!--?xml version="1.0" encoding="UTF-8"?-->
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<settings>
<setting name="cacheEnabled" value="true"></setting>
<setting name="lazyLoadingEnabled" value="false"></setting>
<setting name="multipleResultSetsEnabled" value="true"></setting>
<setting name="useColumnLabel" value="true"></setting>
<setting name="useGeneratedKeys" value="false"></setting>
<setting name="defaultExecutorType" value="SIMPLE"></setting>
<setting name="defaultStatementTimeout" value="25000"></setting>
<!-- 전통적인 데이터베이스 컬럼명 형태인 A_COLUMN을 CamelCase형태의 자바 프로퍼티명 형태인 aColumn으로 자동으로 매핑하도록 함 -->
<setting name="mapUnderscoreToCamelCase" value="false"></setting>
<setting value="VARCHAR" name="jdbcTypeForNull"></setting>
</settings>
<typealiases>
<typealias alias="resumeComment" type="com.miram.portal1.client.vo.ResumeCommentVO"></typealias>
</typealiases>
<mappers>
<mapper resource="mybatis/home.xml"></mapper>
</mappers>
</configuration>
|
3.Mapper.xml
DAO와 연결하여 Query문 작성
1
2
3
4
5
6
7
8
9
10 | <!--?xml version="1.0" encoding="UTF-8"?-->
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.miram.portal1.admin.dao.AdminDAO">
<select id="getAdmin" parametertype="String" resulttype="admin">
SELECT *
FROM MEM_ADMIN
WHERE ADMIN_ID = #{admin_id}
</select>
</mapper>
|
4.context.xml
Context 파일에 SqlSessionTemplate와 SqlSessionFactoryBean을 등록하고, DAO 빈을 등록하며 이 둘을 property로 준다-
1
2
3
4
5
6
7
8
9
10
11
12
13
14 | <bean id="HomeDAO" class="org.mybatis.spring.mapper.MapperFactoryBean">
<property name="mapperInterface" value="com.miram.portal1.client.dao.HomeDAO"/>
<property name="sqlSessionFactory" ref="sqlSessionFactory"/>
<property name="sqlSessionTemplate" ref="sqlSessionTemplate"/>
</bean>
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource"/>
<property name="configLocation" value="classpath:/mybatis/MapperConfig.xml"/>
</bean>
<bean id="sqlSessionTemplate" class="org.mybatis.spring.SqlSessionTemplate">
<constructor-arg ref="sqlSessionFactory"/>
</bean>
|