`
tuyuan
  • 浏览: 30436 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Hibernate saveOrUpdate 批量保存或更新问题

    博客分类:
  • Java
阅读更多

在使用Hibernate saveOrUpdate 批量保存或更新数据时(也就是即有保存又有更新),有时会报如下错误:

 

org.hibernate.HibernateSystemException: a different object with the same identifier value was already associated with the session: [com.lee.dao.hibernate.User#12]

 

方法的调用:

evaluateService.saveOrUpdate(comment,orderDetail,user)

 

 

原始报错方法如下: 

@Transactional public void saveOrUpdate(Object...objects) { for(Object obj : objects){ getHibernateTemplate().saveOrUpdate(obj); getHibernateTemplate().flush(); } }

修改后方法如下:

@Transactional
public void saveOrUpdate(Object...objects) {
	for(Object obj : objects){
		getHibernateTemplate().saveOrUpdate(obj);
		getHibernateTemplate().flush();
		getHibernateTemplate().clear();//后添加
	}
}
 
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics