mybatis 批量插入對象數組使用及主要事項

1.應用場景
項目中需要批量保存前端傳過來的數據,數據量較多,寫for 循環插入效率低,因此還是需要手寫xml寫sql 插入,需要使用的就是mybatis 動態sql

2.使用
1)DAO層創建批量插入方法

 boolean savePlDxmb(List<DbddDxmb> dbddDxmbs);

2)編寫sql,id爲方法名,collection 默認爲list,如果需要使用其他名字,則需要在dao層加@parms("")

<insert id="savePlDxmb">
        insert into dbdd_dxmb (ID,YWMKID,BT,DXNR,SXH)

        <foreach collection="list" item="jgfzr" separator="UNION ALL">
            select   #{jgfzr.id},#{jgfzr.ywmkid},#{jgfzr.bt,jdbcType=VARCHAR},#{jgfzr.dxnr,jdbcType=VARCHAR},#{jgfzr.sxh}from dual
        </foreach>
    </insert>

3.注意事項
插入的值可能爲空,爲空就會報錯,因此需要加入 jdbcType=VARCHAR
 

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