[iBATIS/MyBatis] iBATIS와 MyBatis의 차이

[iBATIS/MyBatis] iBATIS와 MyBatis의 차이

1. MyBatis는?

- 기존 JDBC코드는 Connection과 Statement를 통해 쿼리를 전송하면 연결받고 Close하는 방식을 사용.

==> 이를 프레임워크화를 하여 캡슐화를 한것이 mybatis.

- JDBC 코드를 간편하게 사용할 수 있고 SQL문장과 프로그래밍 코드가 분리되어 있어 사용하는데 있어 편리

- 또한 라이브러리를 통해 매개변수를 전달하고 결과를 추출하는 일이 간단히 처리가능

2. iBATIS -> MyBatis : 이름 변경의 이유?

Apache Proejct팀이 iBATIS를 ~2.3까지 개발 하였음.

이후 해당 팀이 google code 팀으로 이동하면서, 이름을 MyBatis로 변경하여 2.5부터 개발 진행중.

3. 차이점

1) Java 요구사항 차이점

iBATIS : JDK 1.4 이상 가능

MyBatis : JDK 1.5 이상 가능(MyBatis 3.2 이상 버전은 JDK 1.6 이상 요구)

2) 패키지 내부 구조 변경

iBATIS : com.ibatis.*

MyBatis : org.apache.ibatis.*

3) sqlMap.xml 내부구조 변경

iBATIS: parameterMap

MyBatis: parameterType (dtd 변경 - http://mybatis.org/dtd/mybatis-3-mapper.dtd)

org.apache.ibatis ibatis-sqlmap 2.3.4.726

org.mybatis mybatis 3.4.5 org.mybatis mybatis-spring 1.3.1

(상위버전이 필요하다면 maven repository에서 확인)

5) 네임스페이스 방식 변경

iBATIS :

MyBatis :

네임스페이스 사용은 필수, userStatementNameSpace설정 제거

from http://hhnee.tistory.com/91 by ccl(A) rewrite - 2021-11-18 13:28:04