iBATIS 다운로드
http://ibatis.apache.org/java.cgi
2010.2,8일 현재 iBATIS 3는 베타 버전이미로 정식버전인 2.3.4버전을 사용한다.
2.3.4버전을 다운로드 받은 후 압출을 풀고 lib 폴더의 ibatis-2.3.4.빌드버전.jar파일을 이클립스 lib 폴더에 추가하고
ibatis-2.3.4.726\simple_example\com\mydomain\data 폴더의 SqlMapConfig.xml 파일을 복사하여 src 폴더에 추가 한다.
SqlMapConfig.xml 수정
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE sqlMapConfig
PUBLIC "-//ibatis.apache.org//DTD SQL Map Config 2.0//EN"
"http://ibatis.apache.org/dtd/sql-map-config-2.dtd">
<sqlMapConfig>
<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:XE"/>
<property name="JDBC.Username" value="javauser"/>
<property name="JDBC.Password" value="dkdlxl"/>
</dataSource>
</transactionManager>
<sqlMap resource="com/samsung/attachfile/dao/ibatis/maps/Attachfile_SqlMap.xml"/>
</sqlMapConfig>
<sqlMap resource="실제 sqlMap.xml 파일의 경로를 적어준다.">
sqlMap.xml 예제
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE sqlMap
PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN"
"http://ibatis.apache.org/dtd/sql-map-2.dtd">
<sqlMap>
<!-- bean/vo의 프로퍼티와 db테이블의 컬럼 맵핑 -->
<resultMap id="boardResultMap" class="board">
<result property="seq" column="SEQ"/>
<result property="title" column="TITLE"/>
<result property="content" column="CONTENT"/>
<result property="registDate" column="REGIST_DATE"/>
<result property="readCount" column="READ_COUNT"/>
</resultMap>
<select id="selectBoard" parameterClass="int" resultMap="boardResultMap">
SELECT
SEQ, TITLE, CONTENT, REGIST_DATE, READ_COUNT
FROM
TB_BOARD
WHERE
SEQ = #seq#
</select>
<select id="selectBoardSeq" resultClass="int">
SELECT
SEQ_TB_BOARD.NEXTVAL
FROM
DUAL
</select>
<select id="selectBoardList" resultMap="boardResultMap">
SELECT
SEQ, TITLE, CONTENT, REGIST_DATE, READ_COUNT
FROM
TB_BOARD
</select>
<insert id="insertBoard" parameterClass="board">
INSERT INTO TB_BOARD
(SEQ, TITLE, CONTENT, REGIST_DATE, READ_COUNT)
VALUES
(#seq#, #title#, #content#, SYSDATE, 0)
</insert>
<update id="updateBoard" parameterClass="board">
UPDATE
TB_BOARD
SET
TITLE = #title#,
CONTENT = #content#
WHERE
SEQ = #seq#
</update>
<update id="updateBoardReadCount" parameterClass="int">
UPDATE
TB_BOARD
SET
READ_COUNT = READ_COUNT + 1
WHERE
SEQ = #seq#
</update>
<delete id="deleteBoard" parameterClass="int">
DELETE FROM
TB_BOARD
WHERE
SEQ = #seq#
</delete>
</sqlMap>
iBATIS SQL Maps 튜토리얼 iBATIS SQL Maps 개발자 가이드
참고자료
iBATIS-SqlMaps-2-Tutorial_ko.pdf
iBATIS-SqlMaps-2_ko.pdf


0