- 데이터의 입력, 조회, 수정, 삭제(CRUD)를 보다 편하게 하기 위해
xml로 구조화한 Mapper 설정 파일을 통해서 JDBC를 구현한 영속성 프레임워크
- 기존에 JDBC를 통해 구현했던 상당 부분의 코드와
파라미터 설정 및 결과 매핑을 xml 설정을 통해 쉽게 구현할 수 있음
- MyBatis 공식 홈페이지 (http://www.mybatis.org/mybatis-3/ko)




(아래 내용을 차례대로 추가)
Config
Location : http://mybatis.org/dtd/mybatis-3-config.dtd
Key type : Public ID
Key : -//mybatis.org//DTD Config 3.0//EN
Mapper
Location : http://mybatis.org/dtd/mybatis-3-mapper.dtd
Key type : Public ID
Key : -//mybatis.org//DTD Mapper 3.0//EN
mybatis-config.xml 파일 생성


<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0/EN" "http://mybatis.org/dtd/mybat
<configuration>
<settings>
<!-- Java -> DB로 INSERT,UPDATE 시 Java의 null 값을 DB의 NULL로 인식하도록 설정-->
<setting name="jdbcTypeForNull" value="NULL" />
<!-- DB의 UnderScore (_) 표기법 <-> Java의 Camel 표기법
두 표기법이 서로 변환 될 수 있도록 매핑하여
Java 필드명(memberId)과 DB 컬럼명(MEMBER_ID)가 서로 연결되게 함
-->
<setting name="mapUnderscoreToCamelCase" value="true" />
</settings>
</configuration>
mapper.xml 파일 생성


<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-m
<mapper namespace="연결할 Mapper 인터페이스 파일 경로 작성 (필수)">
<!-- 해당 태그는 무조건 삭제!! -->
<!--<cache-ref namespace=""/>-->
<!-- 수행 하려는 SQL 구문 태그 작성-->
<select id="" parameterType="" resultType="">SQL 작성</select>
<insert id="" parameterType="">SQL 작성</insert>
<update id="" parameterType="">SQL 작성</update>
<delete id="" parameterType="">SQL 작성</update>
</mapper>
| id | 구문을 찾기 위해 사용될 수 있는 네임스페이스 내 유일한 구분자 Mapper 인터페이스의 메서드명 동일하게 작성! |
| parameterType | 구문에 전달될 파라미터의 클래스 명(패키지 경로 포함)이나 별칭 |
| resultType | 리턴되는 타입의 패키지 경로를 포함한 전체 클래스 명이나 별칭, collection인 경우 list, arraylist로 설정할 수 있다. |
