selectKey:
有3個主要的屬性:
1)resultClass:返回的主鍵的數據類型,跟sqlMap中的數據類型一致;
2)type:表示主鍵在insert之前或之后生成(取決於數據庫的主鍵生成策略),取值分別為[pre|post],非必須,未填寫時如果在insert之前表示pre,否則表示post;
3)keyProperty:返回值保存到的屬性,非必須(作用參見Oracle配置);
<selectKey property="DeliHeadId" type="pre" resultClass="long">
select SCP.MPS_CONTRACT_DELI_HEAD_S.nextval as value from dual
</selectKey>
isNotEmpty、isEmpty:
1)prepend:條件的邏輯變量
2)property:入參的參數名稱
下句意為:當ZTECntNo不等於空時,增加條件。
<isNotEmpty prepend="AND" property="ZTECntNo">d.zte_cnt_no like #ZTECntNo#</isNotEmpty>
resultMap:
表示返回的結果集為MpsContractDeliEntity實體類,實體類屬性{property}與表字段{column}之間的對應關系。
<resultMap id="MpsContractDeli_AllColumns" class="MpsContractDeliEntity">
<result property="DeliveryId" column="DELIVERY_ID" />
<result property="ZteCntNo" column="ZTE_CNT_NO" />
</resultMap>
parameterMap
:
表示入參的格式,入參類型為hashtable,其key對應{property}與表字段{column}之間的對應關系
direction表示參數是輸出還是輸入參數。
<parameterMap id="MpsContractDeli_GOPParam" class="HashTable">
<parameter property="DeliveryId" column="PN_DELIID" direction="Input" />
<parameter property="CurResult" column="P_CUR" direction="Output" dbType="Cursor"/>
</parameterMap>
isEqual、isNotEqual:
屬性{property} 的值是否等於{compareValue}的值。
<isEqual prepend="AND" property="IsShowSended" compareValue="0">