MyBatis 연결 설정

2014. 8. 9. 22:08 Spring/Java

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>

'Spring/Java' 카테고리의 다른 글

BLOB으로 저장 된 이미지 출력  (0) 2014.08.13
Excel Insert, poi  (0) 2014.08.12
AOP 사용, 어노테이션  (0) 2014.08.10
ppt to image/pdf 변환  (0) 2014.08.10
간단한 암호화, MD5, SHA1  (0) 2014.08.10

Recent Posts

Recent Comments

Recent Trackbacks