티스토리 뷰

iBatis Framework 개요: Data Mapper와 Sql Mapper


iBatis는 Data Mapper와 Sql Mapper로 구성된 프레임워크로, 미리 작성된 SQL 구문을 실행하고 실행 결과를 자바 객체에 매핑하여 반환하는 역할을 합니다. 이번 글에서는 iBatis의 개요와 주요 개념에 대해 알아보겠습니다.



iBatis 개념

iBatis는 객체와 데이터베이스를 독립적으로 유지하면서 데이터를 매핑하는 Data Mapper입니다. SQL 구문 작성에 필요한 데이터를 클래스의 필드에서 추출하고 SQL 실행 결과를 클래스에 매핑합니다. 이를 통해 JDBC의 ResultSet과 객체를 연결하는 작업과 속성 매핑을 자동화하여 개발자의 작업을 간소화합니다.


사용 예

예를 들어, 회원 정보를 저장하는 데이터베이스 테이블이 있다고 가정해보겠습니다. 해당 테이블과 매핑되는 MemberVO라는 자바 빈 클래스를 작성합니다. 그리고 iBatis를 사용하여 SQL 구문을 작성하고 매핑합니다. 이를 통해 회원 정보를 조회하는 SQL 구문을 작성하고, 실행 결과를 MemberVO 객체에 자동으로 매핑할 수 있습니다.


iBatis 구조

iBatis는 SqlMapConfig.xml 파일과 SqlMap.xml 파일로 구성됩니다. SqlMapConfig.xml 파일은 전반적인 환경 설정 파일로, 프로퍼티 설정, 데이터 소스 설정, SqlMap 설정 등을 포함합니다. SqlMap.xml 파일은 실제 SQL 구문을 작성하고 실행 결과를 객체에 매핑하는 규칙을 정의합니다.

SqlMapConfig.xml 작성

SqlMapConfig.xml 파일은 <sqlMapConfig>를 루트 엘리먼트로 사용합니다. 파일 내에서는 프로퍼티 설정, 트랜잭션 관리자 설정, 데이터 소스 설정, SqlMap 설정 등을 지정합니다.


SqlMap.xml 작성

SqlMap.xml 파일은 <sqlMap>을 루트 엘리먼트로 사용합니다. 파일 내에서는 <select>, <insert>, <update>, <delete> 등의 엘리먼트를 사용하여 SQL 구문을 작성하고, 결과를 객체에 매핑하는 규칙을 정의합니다.


SqlMapClient 생성

매번 객체 생성 코드를 반복하는 것을 피하기 위해 SqlMapClientFactory 클래스를 작성합니다. 이 클래스를 통해 SqlMapClient를 생성하고 반환할 수 있습니다.


DAO 클래스 작성

DAO 클래스에서는 SqlMapClientFactory를 이용하여 SqlMapClient를 생성하고, 해당 객체를 사용하여 데이터베이스에 접근합니다. 예를 들어, UserDAO 클래스에서는 getUser() 메서드를 구현하여 SqlMapClient를 사용하여 회원 정보를 조회합니다.


iBatis는 Data Mapper와 Sql Mapper로 구성된 프레임워크로, SQL 구문을 실행하고 실행 결과를 자바 객체에 매핑하여 반환합니다. 이를 통해 데이터베이스와 객체를 독립적으로 유지하면서 데이터를 이동시킬 수 있습니다. iBatis를 활용하여 개발할 때에는 SqlMapConfig.xml과 SqlMap.xml 파일을 작성하여 환경 설정과 SQL 구문을 정의해야 합니다. DAO 클래스에서는 SqlMapClient를 사용하여 데이터베이스에 접근하고 객체를 매핑하는 작업을 수행합니다.

"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/09   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
글 보관함