日期:2014-05-19  浏览次数:20564 次

ibatis查询问题
请问下面的代码中 select 块是怎么传参数的?
XML code
<?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="jf">

  <resultMap id="OM_AREA_MapWithTranslation" class="com.eshore.itsm.dao.model.OmAreaBean" >
      <result property="areaId" column="AREA_ID" /> 
      <result property="areaName" column="AREA_NAME" nullValue="" /> 
      <result property="areaCode" column="AREA_CODE" nullValue="" /> 
      <result property="parntAreaId" column="PARNT_AREA_ID" /> 
      <result property="areaDesc" column="AREA_DESC" nullValue="" /> 
  </resultMap>
  
    <!-- 自定义SqlMap 映射对象--> 
  <resultMap id="OM_AREA_MapWithTranslationVo" class="com.eshore.itsm.system.om.model.OmAreaBeanVo" >
      <result property="areaId" column="AREA_ID" /> 
      <result property="areaName" column="AREA_NAME" nullValue="" /> 
      <result property="areaCode" column="AREA_CODE" nullValue="" /> 
      <result property="parntAreaId" column="PARNT_AREA_ID" /> 
      <result property="areaDesc" column="AREA_DESC" nullValue="" /> 
      <result property="parntAreaName" column="PARNT_AREA_NAME" nullValue="" /> 
  </resultMap>
  
  <!-- 自定义SqlMap 映射对象--> 
  <resultMap id="OM_AREA_MapVo" class="com.eshore.itsm.system.om.model.OmAreaBeanVo" >
      <result property="areaId" column="AREA_ID" />
      <result property="areaName" column="AREA_NAME" nullValue="" />
      <result property="areaCode" column="AREA_CODE" nullValue="" />
      <result property="parntAreaId" column="PARNT_AREA_ID" />
      <result property="areaDesc" column="AREA_DESC" nullValue="" />
      <result property="parntAreaName" column="PARNT_AREA_NAME" nullValue="" /> 
  </resultMap>
  
  <!-- 自定义SqlMap 映射对象--> 
  <resultMap id="OM_AREA_MapTreeNode" class="com.eshore.sysmgr.model.TreeNodeBean" >
      <result property="id" column="AREA_ID" />
      <result property="name" column="AREA_NAME" nullValue="" />
      <result property="childCount" column="CHILD_COUNT" nullValue="" />
  </resultMap>
  
  <select id="OM_AREA_selectWithTranslation" resultMap="OM_AREA_MapWithTranslation" > 
   SELECT 
   <isPropertyAvailable property="extraHint"><isNotEmpty property="extraHint"> 
    /*+ $extraHint$ */
   </isNotEmpty></isPropertyAvailable>
      AREA_ID ,
      AREA_NAME ,
      AREA_CODE ,
      PARNT_AREA_ID ,
      AREA_DESC
   FROM OM_AREA A
   <dynamic prepend="WHERE">    
      <isPropertyAvailable property="areaId" ><isNotNull prepend="AND" property="areaId">
       ( AREA_ID = #areaId:NUMERIC#)
      </isNotNull></isPropertyAvailable>
      <isPropertyAvailable property="areaName" ><isNotEmpty  prepend="AND" property="areaName"> 
        ( AREA_NAME = #areaName:VARCHAR#)
     </isNotEmpty></isPropertyAvailable>