Mybatis 사용시 추가할 pom.xml
<!-- Mybatis 설정 -->
<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>${org.mybatis-version}</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis-spring -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>1.3.2</version>
</dependency>
1. SqlSession , SqlSessionFactory
Mybatis에서 가장 핵심 객체는 SqlSession 과 SqlSessionFactory 이다
SqlSessionFactory는 SqlSession을 생성 한다
그리고 SqlSession을 통해 Connection을 생성하거나 SQL을 전달하고 결과를 리턴
스프링에서 SqlSessionFactory을 등록하는 작업은 SqlSessionFactoryBean을이용
2. Mapper
좀 더 편하게 SQL을 처리하기 위해서는 설정을 분리하고 자동으로 처리되는 방식이 좋다
그래서 Mybatis의 Mapper를 사용한다
Mapper는 SQL과 그에 대한 처리를 지정하는 역할을 한다
package 패키지명;
import org.apache.ibatis.annotations.Select;
public interface TimeMapper {
@Select("SELECT SYSDATE FROM dual;")
public String getTime();
}
root-context.xml
<mybatis-spring:scan base-package="Mapper인터페이스 패키지명"/>
mybatis-spring:scan의 base-package 속성은 지정된 패키지의 모든 Mybatis 어노테이션을 찾아 처리
* Java 설정시
@MapperScan으로 처리
@MapperScan(basePackages = { "mapper 클래스 패키지명" })
public class SampleJavaConfig {
......
}
'Spring' 카테고리의 다른 글
MVC , 모델2(Model2) , SpringMVC (0) | 2020.05.21 |
---|---|
Spring MVC 프로젝트 구동 구조 (0) | 2020.05.20 |
Bean (0) | 2020.05.19 |
DI (Dependency Injection) (0) | 2020.05.19 |
제어반전(IOC) (0) | 2020.05.19 |