스프링 - 마이바티스 설정
스프링과 마이바티스는 별개의 프로그램
따라서 스프링과 DB를 연결해주는 JDBC가 필요했듯,
스프링과 마이바티스를 연결해줄 spring-mybatis까지 같이 설치
pom.xml에 아래와 같이 의존성 추가
<!-- Mybatis -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.4.3</version>
</dependency>
<!-- Mybatis-spring -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>1.3.1</version>
</dependency>
SqlSessionFactory 객체 bean-container에 추가
jdbc에서 jdbcTemplate 객체를 이용해
mybatis에서는 SqlSessionFactory 객체를 이용
root-context.xml(혹은 빈 컨테이너를 담당하는 xml파일)
jdbc관련 설정을 한 다음 아래와 같이 의존성 설정을 추가
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<property name="mapperLocations" value="classpath:매퍼xml파일의 경로"/>
</bean>
마이바티스 구현 파일을 bean-container에 넣을 수 있도록 스캔설정
root-context.xml 등의 파일에 namespace에서, mybatis-spring 체크
<!-- mybatis 구현 xml파일을 스캔할 수 있도록 경로 지정 -->
<mybatis-spring:scan base-package="인터페이스가 있는 패키지 경로"/>
Mapper XML 파일 설정
일반적으로 repository(DAO) 인터페이스가 있는 경로에 같이 만들어준다
<?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="repository(DAO)에 해당하는 인터페이스 파일 경로">
</mapper>
와 같이 작성하게 되며, mapper namespace="" 에 들어가는 경로에 있는
인터페이스 파일을 실제로 구현