2.在mybatis調用存儲過程時,傳入參數的名字能夠不用跟存儲過程定義的參數名一致
java
4.parameterMap(經常使用於存儲過程)和resultMap相似,表示將查詢結果集中列值的類型一一映射到java對象屬性的類型上,在開發過程當中不 推薦這種方式。數據庫
parameterType="java.util.Map" statementType="CALLABLE"
resultType="java.util.HashMap 複製代碼
7.數據庫爲Date,java類型也爲Date,mybatis中的jdbcType=TIMESTAMP 時間入庫後才精確到秒
bash
9.新增記錄返回id
mybatis
<!--新增用戶關聯帳戶信息-->
<insert id="saveLinkUserAccInfo" parameterType="linkUserAccInfo">
<selectKey keyProperty="linkNo" resultType="String" order="BEFORE">
select sys_guid() from dual
</selectKey>
INSERT INTO LINK_USER_ACC_INFO (LINK_NO, USER_NO) VALUES
(#{linkNo, jdbcType=VARCHAR},#{userNo, jdbcType=VARCHAR)
</insert> 複製代碼
SELECT
<include refid="accChkResultColumns"/>
FROM acc_chk_result a
<include refid="accChkResultJoins"/>
<where>
<if test="beginTradeDay != null and endTradeDay != null and beginTradeDay != '' and endTradeDay != ''">
AND a.work_day BETWEEN to_char(#{beginTradeDay},'yyyymmdd') AND to_char(#{endTradeDay},'yyyymmdd')
</if>
</where>
複製代碼
12.對oracle,使用MyBatis框架作更新操做時,若是不指定jdbcType,在該字段須要更新的內容爲空時,就會出現1111錯誤,也就是無效的列類型,這個時候你就要使用jdbcType
oracle
14.參數爲集合的查詢app
select*from kj_region a where pregionid in
<foreach item="item" index="index" collection="list" open="("separator="," close=")">
#{item}
</foreach>複製代碼
16.插入集合框架
<insert id="addRItem" parameterType="java.util.List">
insert into lzf_rental_item_detailsl ( id, rentalInfoId,itemName, number, remark ) values
<foreach collection="list" item="item" index= "index" separator =",">
( #{item.id}, #{item.rentalInfoId}, #{item.itemName}, #{item.number}, #{item.remark} )
</foreach>
</insert>複製代碼