개인공부/SPRING

MyBatis 설정

ELpsy 2022. 10. 10. 14:43

MyBatis 관련 라이브러리 추가

<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis -->
<dependency>
    <groupId>org.mybatis</groupId>
    <artifactId>mybatis</artifactId>
    <version>3.4.6</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>

<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-tx</artifactId>
    <version>${org.springframework-version}</version>
</dependency>

<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-jdbc</artifactId>
    <version>${org.springframework-version}</version>
</dependency>

📌추가설명

더보기
spring-jdbc/spring-tx : 스프링에서 데이터베이스 처리와 트랜잭션 처리                                                                        mybatis/mybtis-spring: MyBatis와 스프링 연동용 라이브러리

SqlSessionFactory

SqlSessionFactory는 데이터베이스와의 연결과 SQL의 실행에 대한 모든 것을 가진 가장 중요한 객체다.
이 객체가 DataSource를 참조하여 MyBatis와 DB서버를 연동시켜준다.

SqlSessionFactory를 생성해주는 SqlSessionFactoryBean 객체를 먼저 설정하여야 한다.
root-context.xml

<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
    <property name="dataSource" ref="dataSource"></property>
</bean>

 

스프링과의 연동처리

: SQL을 어떻게 처리할 것인지를 별도의 설정을 분리하고, 자동으로 처리되는 방식을 이용해본다. 이를 위해서는 MyBatis의 Mapper라는 존재를 작성해줘야 한다.

Mapper란?

: SQL과 그에 대한 처리를 지정하는 역할을 한다. MyBatis-Spring을 이용하는 경우에는 Mapper를 XML과 인터페이스+어노테이션의 형태로 작성 가능하다.