MyBatis :: mybatis-config 설정

김병철·2022년 11월 25일
0

mybatis

목록 보기
2/4

mybatis-config 설정

# mybatis-config.xml 생성 위치

  • 'resources'라는 Source Folder를 생성하고 mybatis-config.xml파일을 등록한다.

# mybatis-config.xml 작성

  • mybatis-config.xml 최상단에 아래와 같이 xml형식을 지정하여 아래의 설정 내용이 mybatis config 설정임을 선언한다.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration
  PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
  "https://mybatis.org/dtd/mybatis-3-config.dtd">
  • configuration 최상위 태그를 작성하고 내부에 필요한 설정을 작성한다.
<configuration>
	<!-- 내부에 필요한 설정들을 작성한다. -->
</configuration>
  • properties 태그 : 외부 properties파일의 내용을 불러올 때 사용한다.
<properties resource="org/mybatis/example/config.properties">
	<property name="username" value="dev_user"/>
	<property name="password" value="F2Fa3!33TYyg"/>
</properties>
  • properties 설정 값 활용
<dataSource type="POOLED">
    <property name="driver" value="${driver}"/>
    <property name="url" value="${url}"/>
    <property name="username" value="${username}"/>
    <property name="password" value="${password}"/>
</dataSource>
  • settings 태그 : MyBatis구동 시 선언할 설정 작성
<settings>
 	...
	<!-- Null 값이 발생할 경우 빈칸이 아닌 Null로 인식 -->
	<setting name="jdbcTypeForNull" value="NULL"/>
 	...
</settings>

속성 값 참조 : https://mybatis.org/mybatis-3/ko/configuration.html#settings

  • typeAliases 태그 : MyBatis에서 사용할 자료형의 별칭 선언
<typeAliases>
	<typeAlias alias="member" type="com.kh.mybatis.member.model.vo.Member"/>
</typeAliases>
  • environments 태그 : MyBatis에서 연동할 DataBase 정보 등록
<environments default="development">
	<environment id="development">
		<transactionManager type="JDBC">
			<property name="..." value="..."/>
		</transactionManager>
		<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>

여러 개의 DB를 등록하여 사용할 수 있다.

build()메소드 구현 시 매개변수에 environment의 id를 설정하면 된다.

  • mappers 태그 : 사용하려는 쿼리문이 정의된 mapper파일 등록
<mappers>
	<mapper resource="org/mybatis/builder/AuthorMapper.xml"/>
	<mapper resource="org/mybatis/builder/BlogMapper.xml"/>
	<mapper resource="org/mybatis/builder/PostMapper.xml"/>
</mappers>

MyBatis 내장 별칭

# POOLED와 UNPOOLED 차이점

profile
keep going on~

0개의 댓글