📌 MyBatis 전반에 걸친 세팅
java project로 구현한 것이기 때문에 아래와 같은 것들이 필요하다.
1. mybatis jar 파일 lib 폴더에 추가
2. mysql-connector jar 파일 lib 폴더에 추가
3. jar 파일 Build Path에서 등록하기
xml 형태의 설정파일 안에는 TransactionManager, Datasource 등의 설정을 포함한다.
<?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>
<properties resource="config/db.properties"/>
<typeAliases>
<typeAlias type="com.ssafy.board.model.dto.Board" alias="Board"/>
</typeAliases>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC" />
<dataSource type="POOLED">
<property name="driver" value="${driver}" />
<property name="url" value="${url}" />
<property name="username" value="${username}" />
<property name="password" value="${password}" />
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="mapper/board.xml"/>
</mappers>
</configuration>
아래와 같은 순서들로 작성한다.
1. properties
2. typeAliases
3. environments
-- transactionManager: Transaction 관리 방법 설정(JDBC: 수동, MANAGED: 자동)
-- dataSource: JDBC Connection 객체의 소스 설정 (UNPOOLED: 매 요청마다 커넥션을 열고 닫음)
4. mappers
-- mapper를 등록하기 위한 것이다. SQL문이 작성된 매핑 파일의 위치를 작성한다.
-- Mapper가 xml으로 작성되었을 경우와 interface로 작성되었을 경우 설정 방법이 다르다.
mybatis-config.xml 파일과 매핑된다.
url=jdbc:mysql://localhost:3306/ssafy_board?serverTimezone=UTC
driver=com.mysql.cj.jdbc.Driver
username=root
password=root
<?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.ssafy.board.model.dao.BoardDao">
<!-- 해당 공간에는 사용할 SQL 문을 정의한다. -->
</mapper>