54.iBATIS, MyBatis/iBatis2008. 11. 13. 10:27
반응형

iBATIS환경을 이해할 수 있도록 흐름도를 한번 그려 보자!

이미지를 클릭하면 원본을 보실 수 있습니다.


위의 그림에서 알 수 있듯이 sqlMapConfig.xml문서가 바로 환경 설정 파일임을 알 수 있을 것이다.

이것은 load시 한번만 인식 되는데 그 부분이 바로 앞의 모든 예제들에서 클라이언트 부분에 다음과 같은 코드가 된다.


      Reader reader = Resources.getResourceAsReader("ex2/sqlMapConfig.xml");


이때 transationManager요소와 sqlMap요소들을 인식하여  RDBMS와 SQL문을 관리하는 xml문서들이 인식된다.그리고


     SqlMapClient sqlMapper = SqlmapClientBuilder.buildSqlmapClient(reader);


문장으로 인해 인식된 SQL문들을 관리하는 xml요소들이 모두 sqlMapper로 하나의 객체에 id가 키값이 되어 Map구조로

담겨져 관리된다. qureryForList()와 같은 메서드를 통하여 지정된 id를 사용하면 테이블에 있는 자원들을 Emp.xml에 정의된

resultMap이나 지정된 객체로 쉽게 받는다.


특징
iBATIS Hibernate JPA
간단함
가장 좋음
좋음 좋음
완벽한 객체 관계 매핑 평균 가장 좋음 가장 좋음
데이터 모델 변경시 융통성 좋음 평균 평균
복잡성
가장 좋음 평균 평균
SQL에 대한 의존성 좋음 평균 평균
성능 가장 좋음 가장 좋음 N/A *
다른 관계 데이터베이스에 대한 이식성 평균 가장 좋음 N/A *
자바가 아닌 다른 플랫폼에 대한 이식성 가장 좋음 좋음 지원하지 않음
커뮤니티 지원과 문서화 평균 좋음 좋음
<표:http://blog.openframework.or.kr/50에서 펌>

Posted by 1010