...\WebContent\WEB-INF\classes\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>
<properties resource="ibatis.properties" />
<settings cacheModelsEnabled="false"
useStatementNamespaces="true"
lazyLoadingEnabled="true"
enhancementEnabled="true"
/>
<transactionManager type="JDBC">
<dataSource type="JNDI">
<property name ="DataSource" value="${datasource_name}"/>
</dataSource>
</transactionManager>
<sqlMap resource="/com/simas/agweb/entity/user/userMap.xml" />
</sqlMapConfig>
==============================================================
위 파일과 같은 디렉토리에 일반적으로 ibatis.properties 파일 위치.
위 파일에 쓰인 ${datasource_name} 부분을 위해 일반적으로 사용.
datasource_name=java:comp/env/jdbc/jpox
==================================================================================
sqlMap 파일 - /com/simas/agweb/entity/user/userMap.xml 파일에는 Sql 을 정의한다.
<?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 namespace="UserMap">
<include refid="select-all"/>
<isParameterPresent prepend="WHERE">
tu.group_id = tug.group_id
<isNotEqual property="group_id" compareValue="0" prepend="AND">
tu.group_id = #group_id#
</isNotEqual>
<isNotEmpty property="user_id" prepend="AND">
tu.user_id = #user_id#
</isNotEmpty>
</isParameterPresent>
<isNotParameterPresent prepend="WHERE">
tu.group_id = tug.group_id
</isNotParameterPresent>
</select>
</sqlMap>
위와 같이 sql 을 정의해서 사용한다.
sqlMap 파일에서 ## 으로 둘러쌓인 값은 '' 가 붙음.(필드 값에 사용)
반면 $$ 으로 둘러쌓인 값은 '' 이 안 붙음(필드 명에 사용)
'프로그래밍 > Java' 카테고리의 다른 글
HashMap 의 keys 보기 (0) | 2009.02.11 |
---|---|
[iBatis] iBatis 기본 사용법 (0) | 2009.02.11 |
[iBatis] iBatis 설치 (0) | 2009.02.11 |
[이클립스] default workspace (0) | 2009.02.11 |
Access DB 등록 (0) | 2009.02.11 |