카테고리 없음

04. MyBatis typeAliases 설정하기

oCless 2021. 12. 11. 18:26

https://cjy6179.tistory.com/20

 

01. MyBatis 설정 (Mysql )

※ MyBatis 설정 순서 01. MyBatis 관련 라이브러리 받기 02. MyBatis 관련 라이브러리 프로젝트에 추가 03. MyBatis 관련 셋팅  03-1. mybatis-config.xml (DB 연결 정보)  03-2. SqlSessionFactory 생성  03-..

cjy6179.tistory.com

 

"01. MyBatis 설정(Mysql)"에서 사용하였던 예제입니다. 아래 정보 중 typeAliases 항목에 대해서 알아보려고 합니다.

<?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>
  <typeAliases>
  	<typeAlias alias="userInfo" type="common.user.UserInfoVO"/>
  </typeAliases>
  <environments default="development">
    <environment id="development">
      <transactionManager type="JDBC"/>
      <dataSource type="POOLED">
        <property name="driver" value="com.mysql.cj.jdbc.Driver"/>
        <property name="url" value="jdbc:mysql://192.168.0.2:3306/study_db?useSSL=false&amp;serverTimezone=Asia/Seoul&amp;characterEncoding=UTF-8"/>
        <property name="username" value="userId"/>
        <property name="password" value="password"/>
      </dataSource>
    </environment>
  </environments>
  <mappers>
    <mapper resource="basicProject/mapper/userInfoMapper.xml"/>
    <mapper class="common.user.mybatis.UserMapper" />
  </mappers>
</configuration>

 

typeAliases 긴 타입명을 짧게 사용할 수 있도록 해줍니다.

예를 들어 common.user.userInfoVO 이라는 type을 typeAliases 설정을 해줍으로써 userInfo 으로 줄여서 사용이 가능합니다.

<typeAliases  설정 전>

<?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="basicProject.mapper.userInfoMapper">
  <select id="selectUserInfo" resultType="common.user.userInfoVO">
    SELECT * FROM T_USER_MST
  </select>
</mapper>

 

<typeAliases  설정 후>

<?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="basicProject.mapper.userInfoMapper">
  <select id="selectUserInfo" resultType="userInfo">
    SELECT * FROM T_USER_MST
  </select>
</mapper>

 

그리고 아래 정보들은 Mybatis에 내장되어 있는 typeAliases  정보입니다.

반응형