http://www.apache.org -> iBatis -> JAVA -> Download iBATIS Java 2.3.4
다운받은 파일 압축을 풀고 lib폴더에 jar 파일(1개)을 프로젝트의 WEB-INF/lib 폴더에 복사
DAO에서 상속받아 쉽게 쓰기위한 서포트 클래스( sqlMapConfig 로드하기 위한 )를 미리 작성한다
common 패캐지에 BaseDAO.java 를 생성한다
import java.io.IOException;
import com.ibatis.common.resources.Resources;
import com.ibatis.sqlmap.client.SqlMapClient;
import com.ibatis.sqlmap.client.SqlMapClientBuilder;
public abstract class BaseDAO
* iBATIS : SQL Data Mapper
* Sql.MapConfig.xml 을 읽어들여서 sqlMapper 를 만든다.
protected static SqlMapClient sqlMapper;
Reader reader = Resources.getResourceAsReader("common/SqlMapConfig.xml");
sqlMapper = SqlMapClientBuilder.buildSqlMapClient(reader);
} catch (IOException e) {
throw new RuntimeException(
"Something bad happened while building the SqlMapClient instance." + e, e);
4. iBATIS 기본 세팅 파일 ( SqlMapConfig.xml )
common 패키지에 SqlMapConfig.xml 파일을 아래처럼 작성한다
( 압축푼 폴더의 simple_example\com\mydomain\data\SqlMapConfig.xml 참조.. )
<?xml version="1.0" encoding="UTF-8" ?>
PUBLIC "-//ibatis.apache.org//DTD SQL Map Config 2.0//EN"
"http://ibatis.apache.org/dtd/sql-map-config-2.dtd">
<transactionManager type="JDBC" commitRequired="false">
<dataSource type="SIMPLE">
<property name="JDBC.Driver" value="oracle.jdbc.driver.OracleDriver" />
<property name="JDBC.ConnectionURL" value="jdbc:oracle:thin:@127.0.0.1:1521:java" />
<property name="JDBC.Username" value="scott" />
<property name="JDBC.Password" value="tiger" />
<sqlMap resource="member/Member.xml" />
member 패키지에 Member.xml 파일을 아래처럼 작성한다
( member.MemberVO 클래스는 테이블과 데이타 맵핑을 위해 반드시 필요하다.
Bean객체처럼 컬럼명과 같은이름의 속성과 get/set 메소드를 가지고 있어야한다 )
<?xml version="1.0" encoding="UTF-8" ?>
PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN"
"http://ibatis.apache.org/dtd/sql-map-2.dtd">
<sqlMap namespace="Member">
<typeAlias alias="Member" type="member.MemberVO"/>
<select id="member.read" parameterClass="String" resultClass="Member">
select * from member where userid=#userid#
member 패키지에 BaseDAO를 상속받는 MemeberDAO를 생성하여
sqlMap에 select문을 호출하여 회원정보를 가져온다
import java.sql.SQLException;
public class MemberDAO extends BaseDAO {
//해당 userid를 가진 회원의 정보를 가져온다
public MemberVO memberRead(String userid) throws SQLException {
return (MemberVO) sqlMapper.queryForObject("member.read",userid);
출처 : http://egloos.zum.com/slog2/v/3570480