码迷,mamicode.com
首页 > 其他好文 > 详细

mybatis批量更新

时间:2016-02-03 12:42:26      阅读:158      评论:0      收藏:0      [点我收藏+]

标签:

                   mybatis批量更新

以前做的东西,怕忘了随手做一个记录

首先在配置数据库连接字符串后面加上

&allowMultiQueries=true

我的完整的是这样的 jdbc:mysql://192.168.1.200:3306/huasheng?characterEncoding=utf-8&allowMultiQueries=true

 

 

 

Controller层把一个JSON字符串转换成list集合

@RequestMapping(value = "/update")
public@ResponseBody DataMess update(String data){
DataMess dm=new DataMess();
List<Torderdetail> list = new ArrayList<Torderdetail>();
try {
JSONArray obj=JSONObject.parseArray(data);
Iterator<Object>jos = obj.iterator();
while(jos.hasNext()){
JSONObject oj=(JSONObject) jos.next();
Torderdetail orderdetail = new Torderdetail();
orderdetail.setGoodsid(Integer.parseInt(oj.get("goodsid").toString()));
orderdetail.setGoodsnumber(Integer.parseInt(oj.get("goodsnumber").toString()));
list.add(orderdetail);
}
orderDetailService.update(list);
dm.setSuccess(true);
} catch (Exception e) {
dm.setMessage("失败");
dm.setSuccess(false);
LogUtil.doErr("修改出错");
}
return dm;
}

 

配置文件我是这样写的 (Oracle好像不太一样,这只是mysql的配置)

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

<foreach collection="list" item="item" index="index" open="" close="" separator=";">
update tb_orderdetail
<set>
goodsnumber=${item.goodsnumber}
</set>
where orderdetailid = ${item.goodsid} and orderId = 0
</foreach>
</update>

 

mybatis批量更新

标签:

原文地址:http://www.cnblogs.com/gengyixing/p/5179402.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!