반응형

...\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">

 <select id="selectUserMapById" parameterClass="UserMapEntity" resultClass="UserMapEntity">
  <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

+ Recent posts