大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 hot資訊 MyBatis批量的詳細操作

MyBatis批量的詳細操作

更新時間:2021-07-06 16:30:03 來源:動力節點 瀏覽989次

在項目中遇到了需要批量操作數據表的情況,小編遇到的是更新操作。但在mybatis中批量操作有多種,因此在此對mybatis中的批量操作以及其注意點進行總結。

1.批量插入操作

批量插入,傳入的是一個List對象的集合,因此在mapper文件中需要用循環的方式進行操作,具體格式如下:

<insert id="insertBatch" parameterType="java.utils.List">
       insert into tablename (xxx,xxx,xxx)
       values
        /*collection的屬性值為接口中對應的參數名稱
          (#{item.xxx},#{item.xxx},#{item.xxx}
           通過屬性的方式取得對應的值,注意小括號的使用
        */
       <foreach collection="listxxx" item="item" separator=",">
           (#{item.xxx},#{item.xxx},#{item.xxx})
       </foreach>
 </insert>

mapper文件對應的接口形式如下:

public void insertBatch(@Param("listxxx") List<xxx> listxxx);

2.批量更新操作

批量更新操作,筆者總結了下面兩種方式:

(1)使用循環update形式【這種方式需要特別注意,需要在數據庫連接字符串中增加allowMultiQueries=true,不然會報異常】

<update id="batchUpdate" parameterType="java.util.List">

        <foreach collection="list" index="index" item="item" separator=";">
            update t_demo_user set
            <if test="item.userName!=null">
               user_name=#{item.userName},
            </if>
            <if test="item.gender!=null">
                gender=#{item.gender}
            </if>
             where user_id=#{item.userId}
        </foreach>
 </update>

(2)使用 case 形式

<update id="batchUpdate" parameterType="java.util.List">
        UPDATE  t_demo_user
        <trim prefix="set" suffixOverrides=",">
            <trim prefix="user_name= case" suffix="end,">
                <foreach collection="list" item="item" index="index">
                    <if test="item.userName !=null">
                        when user_id=#{item.userId} then #{item.userName}
                    </if>
                </foreach>
            </trim>
            <trim prefix="gender= case" suffix="end,">
                <foreach collection="list" item="item" index="index">
                    <if test="item.gender !=null">
                        when user_id=#{item.userId} then #{item.gender}
                    </if>
                </foreach>
            </trim>
        </trim>
        where user_id in
        <foreach collection="list" item="item" index="index" separator="," open="(" close=")">
            #{item.userId}
        </foreach>
</update>

以上就是動力節點小編介紹的"MyBatis批量的詳細操作",希望對大家有幫助,想了解更多可查看Mybatis基礎教程,如有疑問,請在線咨詢,有專業老師隨時為您服務。

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 久久国产免费观看精品3 | 狠狠色欧美亚洲综合色黑a 狠狠色视频 | 四虎影院成人在线观看 | 亚洲 国产 路线1路线2路线 | 久久综合九色综合网站 | 在线看片不卡 | 日本精品一区 | 欧美毛片又粗又长又大 | 亚洲国产精久久小蝌蚪 | 欧美国产影院 | 日韩精品一区二区三区视频 | 久久91精品国产91久久户 | 久久手机免费视频 | 一本大道久久香蕉成人网 | 午夜禁片 | 成人激情小视频 | 成人嫩草研究院永久网址 | 日本欧美高清全视频 | 亚洲日本一区二区三区在线不卡 | 日本免费一区尤物 | 成人网在线观看 | 爱爱永久免费视频网站 | 国产精品欧美日韩视频一区 | 国产精品青草久久久久婷婷 | 日日摸夜夜摸狠狠摸日日碰夜夜做 | 亚洲日本视频在线 | 日本精品久久久久中文字幕2 | 亚洲精品一区二区三区四区手机版 | 伊人久久成人爱综合网 | 99精品视频免费在线观看 | 91视频网 | 国产成人h综合亚洲欧美在线 | 狠狠五月婷婷 | 欧美午夜伦y4480私人影院 | 一级毛片免费一级直接观看 | 成人免费看毛片 | 亚洲精品免费观看 | 免费看成人播放毛片 | 中文字字幕乱码视频 | 色综合天天综合网亚洲影院 | 香蕉成人影院 |