[ibatis] iBATIS Data Mapper 프레임워크 소개

2019. 10. 7. 16:57 Java 관련/MyBatis, iBatis

[ibatis] iBATIS Data Mapper 프레임워크 소개




IBATIS Data Mapper 프레임워크는 관계형 데이터 베이스에 접근할 때 필요한 자바 코드를 줄여준다.

간단한 XML 을 사용해서 간단하게 자바를 SQL Statement에 Mapping 한다.


* Data Mapper (com.ibatis.sqlmap.*)


IBATIS DATA Mapper API는 자바 객체를 PreparedStatement 파라미터와 ResultSets으로 쉽게 Mapping할 수 있게 한다. IBATIS는 자바 코드의 80%를 줄여준다.


1. IBATIS는 어떻게 작동하나?


Data Mapper는 자바빈즈, MAP 구현, Wrapper 객체(String, Integer..) 그리고 SQL문을 위한 XML문서를 Mapping하기 위한 XML 서술자를 사용하는 매우 간단한 프레임워크를 제공한다.


1) 파라미터(자바빈즈, MAP 또는 Wrapper 객체)로써 객체를 제공한다. 파라미터 객체는 update문내에 입력값을 셋팅하기 위해 사용되거나 쿼리문의 where 절을 셋팅하기 위해 사용된다.


2) Mapping된 Statement를 실행한다. Data Mapper 프레임워크는 PreparedStatement 인스턴스를 생성할 것이고 제공된 파라미터 객체를 사용해서 파라미터를 셋팅한다. 그리고 statement를 실행하고 ResultSet으로부터 결과 객체를 생성한다.


3) update 의 경우에 영향을 미친 rows의 숫자를 반환한다. select 문일 경우 한 개의 객체 또는 컬렉션 객체를 반환한다. 파라미터처럼 결과 객체는 자바빈즈, Map, Wrapper 객체 또는 XML이 될 수 있다.


2. 사용되는 JAR 파일


JAR 파일 

 설명

필수여부 

 ibatis-common.jar

  IBATIS 기본 라이브러리

 필수(대체가능)

 ibatis-sqlmap.jar

  IBATIS SQL을 Mapping하기 위한 라이브러리

 필수(대체가능)

 ibatis-dao.jar

 DAO 프레임워크를 사용하지 않을때 사용 

 필수(대체가능)

 commons-logging-1.1.jar

 IBATIS 라이브러리에서 의존

 필수 

 commons-collections-3.1.jar

 IBATIS 파라미터 및 매핑 Collection 객체에 사용 

 옵션 

 commons-dbcp.jar

 DBCP Connection Pool 사용을 위한 라이브러리 

 옵션 

 commons-pool-1.2.jar

 Connection Pool 생성을 위한 라이브러리 

 옵션

 oscache-2-0-1.jar

 중앙집중적, 분산 캐슁 지원 라이브러리 

 옵션 

 jta-1.0-1a.jar

 JTA 분산 트랜잭션 지원 라이브러리 

 옵션

 xmlParserAPIs-2-4-0.jar

 IBATIS 파라미터 및 결과에 XML Parsing시 사용 

 옵션 

 log4j-1.2.16.jar

 Log4j 로깅 사용시 

 옵션 

 cglib-full-2-0-rc2.jar

 lazy 로딩 및 성능 고려시 

 옵션


ibaits-common.jar, ibatis-sqlmap.jar, ibatis-dao.jar 는 Spring Framework에서 지원하고 있으므로, SpringFramework를 사용한다면 필수로 라이브러리를 참조하지 않아도 된다.


추가적으로 mybatis-2.3.5.jar 파일을 참조하면 iBATIS의 많은 기능들을 지원한다.



출처: https://hyeonstorage.tistory.com/277?category=549765 [개발이 하고 싶어요]