자주 쓰는 Mybatis 설정 정리
mybatis-config.xml 설정
Type Aliases 설정
<configuration>
<typeAlias alias="ClassCondition" type="com.chunjae.lrn.dto.ClassCondition"/>
<typeAlias alias="ClassVO" type="com.chunjae.lrn.domain.ClassVO"/>
</configuration>
mybatis 쿼리에 parameterType, resultType으로 사용되는 클래스들 별칭을 등록해둘 수 있습니다.
컬럼명 자동 매핑 설정
<configuration>
<settings>
<setting name="mapUnderscoreToCamelCase" value="true"/>
</settings>
</configuration>
Mybatis가 스네이크 케이스 DB 컬럼을 카멜케이스 VO 필드로 자동 매핑해주는 설정입니다.
SELECT 쿼리 예시
<select id="selectClass" parameterType="ClassCondition" resultType="ClassVO">
SELECT
class_id,
class_name
FROM
class_table
WHERE
class_id = #{classId}
</select>
SELETE 쿼리 조회 결과에서 컬럼마다 AS를 써주지 않아도 매핑되어서 편리합니다.
Join, 컬렉션 매핑 등 복잡한 구조에서 resultMap을 사용하게 되면 자동 매핑되지 않습니다.