mybatis注解对象批量更改
一、介绍
当有多个对象需要进行更改时,批量修改对象集合List
二、代码
@Update("<script>" + "<foreach collection='listUserAnswerRecord' item='item' open='' close='' separator=';'> " + " update t_qb_record_201910" + " set answered = 0, progress = 1, answer_sheet = null, gmt_update = #{item.gmtUpdate}" + " <where>" + "<choose>" + "<when test='item.unionid !=null'> unionid=#{item.unionid}</when>" + "<otherwise> openid= #{item.openid} </otherwise>" + "</choose>" + " and goods_id = #{item.goodsId} and charpter_id = #{item.charpterId} and type = #{item.type}" + "</where>" + "</foreach>" + "</script>") Integer deleteUserAnswerSheet(@Param("listUserAnswerRecord") List<UserAnswerRecordNew> listUserAnswerRecord);
mybatis 注解批量更新、插入
//批量插入 @Insert({ "<script>", "insert into table(column1, column2) values ", "<foreach collection='userLists' item='item' index='index' separator=','>", "(#{item.column1}, #{item.column2} )", "</foreach>", "</script>" }) public int insertUsers(@Param(value="userLists") List<User> userLists); //批量更新 @Update({ "<script>", "<foreach collection='userLists' item='item' index='index' separator=';'>", "update table b", "set b.column1= #{item.column1},b.column2= #{item.column2} where b.column3= #{item.column3}", "</foreach>", "</script>" }) public int updateUser(@Param(value="userLists") List<User> userLists);
collection
:你传来的集合
item
:里面的类
index
:就是for循环的i
separator
:间隔符
以上为个人经验,希望能给大家一个参考,也希望大家多多支持自学编程网。
- 本文固定链接: https://zxbcw.cn/post/217082/
- 转载请注明:必须在正文中标注并保留原文链接
- QQ群: PHP高手阵营官方总群(344148542)
- QQ群: Yii2.0开发(304864863)