hibernate中怎么样实现批量更新

 我来答
a327297867
2012-08-23 · TA获得超过128个赞
知道小有建树答主
回答量:190
采纳率:0%
帮助的人:100万
展开全部
准备一个arrayList 把你要更新的实体要有ID值,放进去
然后用getHibernateTemplate().saveOrUpdateAll(arrayList)
把集合放进去执行一下就OK了.
更多追问追答
追问
这个项目我没有用spring  能给源代码吗? QQ邮箱是:794935372@qq.com
追答
我一般都用框架做的WEB至于单独操作还是不太会
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
斑马vs王子
2012-08-23 · TA获得超过105个赞
知道答主
回答量:35
采纳率:0%
帮助的人:12.5万
展开全部
我只有没用hibernate的一种批处理方法,
希望会对你有点帮助:
public void updateByRoleid(int roleid,String[] userids) {
String delSql = "delete from users_roles where roleid=?";
Connection con = DBOconnection.getConnection();
PreparedStatement psmt = null;
try {
psmt = con.prepareStatement(delSql);
psmt.setInt(1, roleid);
psmt.executeUpdate();
/**
* 运用数据库的批处理,提高数据库执行效率
*/
con.setAutoCommit(false);//设置不自动执行
String insertSql = "insert into users_roles (userid,roleid)values(?,?)";
psmt = con.prepareStatement(insertSql);

if (userids != null) {
for (String userid:userids) {
int id = Integer.valueOf(userid);
psmt.setInt(1, id);
psmt.setInt(2, roleid);
psmt.addBatch();//加入批处理
}
psmt.executeBatch();//执行所有
con.commit();
}
} catch (SQLException e) {
e.printStackTrace();
}finally{
DBUtil.close(psmt);
DBUtil.close(con);
}
}
追问
不是我想要的我要的是hibernate的批量更新
你这没有载入 hibernate
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
亮亮_958
2012-08-25 · 超过11用户采纳过TA的回答
知道答主
回答量:40
采纳率:0%
帮助的人:23.6万
展开全部
还有一种方式,你可以在dao层直接循环向数据库中更新插入,可能性能方面没有hibernate的saveOrUpdateAll要好
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式