ibatis學習筆記(三)>>>>>>>java實體跟表映射.xml文件詳解

在項目中使用Ibatis難免會使用到java實體跟表映射.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 namespace="ALARM_CAUSE" >
<typeAlias type="com.metarnet.ipnms.alarm.model.AlarmCause" alias="alarmCause"/> <!--
給實體類的一個別名,方面下文引用-->
  <resultMap id="AlarmCauseResult" class="alarmCause" >  <!-- javabean
跟數據庫表列的映射
-->
    <result column="CAUSE_ID" property="causeId" jdbcType="DECIMAL" />
    <result column="CAUSE_NAME" property="causeName" jdbcType="VARCHAR" />
    <result column="CAUSE_NAME_CN" property="causeNameCn" jdbcType="VARCHAR" />
    <result column="ALARM_LEVEL" property="alarmLevel" />
    <result column="LEVEL_NAME" property="levelName" jdbcType="VARCHAR" />
    <result column="CAUSE_NAME_CN" property="causeNameCn" jdbcType="VARCHAR" />
    <result column="ALARM_DESC" property="alarmDesc" jdbcType="VARCHAR" />
    <result column="RESID" property="resid" jdbcType="VARCHAR" />
  </resultMap>

  <sql id="ALARM_CAUSE_Example_Where_Clause" ><!-- 動態的生成SQL -->
    <iterate property="oredCriteria" conjunction="or" prepend="where" removeFirstPrepend="iterate" >
      <isEqual property="oredCriteria[].valid" compareValue="true" >
        (
        <iterate prepend="and" property="oredCriteria[].criteriaWithoutValue" conjunction="and" >
          $oredCriteria[].criteriaWithoutValue[]$
        </iterate>
        <iterate prepend="and" property="oredCriteria[].criteriaWithSingleValue" conjunction="and" >
          $oredCriteria[].criteriaWithSingleValue[].condition$
            #oredCriteria[].criteriaWithSingleValue[].value#
        </iterate>
        <iterate prepend="and" property="oredCriteria[].criteriaWithListValue" conjunction="and" >
          $oredCriteria[].criteriaWithListValue[].condition$
          <iterate property="oredCriteria[].criteriaWithListValue[].values" open="(" close=")" conjunction="," >
            #oredCriteria[].criteriaWithListValue[].values[]#
          </iterate>
        </iterate>
        <iterate prepend="and" property="oredCriteria[].criteriaWithBetweenValue" conjunction="and" >
          $oredCriteria[].criteriaWithBetweenValue[].condition$
          #oredCriteria[].criteriaWithBetweenValue[].values[0]# and
          #oredCriteria[].criteriaWithBetweenValue[].values[1]#
        </iterate>
        )
      </isEqual>
    </iterate>
  </sql>

<!-- 查詢語句標籤返回一個結果集 如果返回多個結果集則用 resultMap 如果返回單個結果集則用resultClass="AlarmCauseResult" -->
  <select id="ALARM_CAUSE_selectAllAlarmCause" resultMap="AlarmCauseResult">
      <!--  select statement  -->

  </select>
    
  <!-- 
刪除語句標籤ibatis中默認的刪除語句是返回數據庫受影響的行數
 -->
  <delete id="ALARM_CAUSE_deleteByPrimaryKey" parameterClass="com.metarnet.ipnms.alarm.model.AlarmCause" >
            <!--  delete  statement  -->

  </delete>

   <!--新增語句標籤返回數據庫受影響的行數 -->
  <insert id="ALARM_CAUSE_insert" parameterClass="com.metarnet.ipnms.alarm.model.AlarmCause" >
   <!--  insertstatement  -->  </insert>

 

 <!--修改語句標籤返回數據庫受影響的行數 -->
  <update id="ALARM_CAUSE_updateByPrimaryKey" parameterClass="com.metarnet.ipnms.alarm.model.AlarmCause">

      <!-- update statement -->
     </update>

<procedure id="ALARM_CAUSE_getById" parameterMap="" >

    {? = call alarm.getSingleDetailRows(?)}

</procedure>

  </sqlMap>

java實體跟數據庫表的映射到此結束了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章