Hibernate更新出错的解决

今天在项目里遇到这样一个问题,使用Hibernate进行修改操作saveOrUpdate()或者是update()时出了这样一个错误,即Hibernate更新出错。根据异常信息的字面意思,大致意思是说, 在一个session对象中同时存在着重复的相同标识的却是不同的对象。

顺河网站建设公司成都创新互联,顺河网站设计制作,有大型网站制作公司丰富经验。已为顺河上1000家提供企业网站建设服务。企业网站搭建\外贸网站建设要多少钱,请找那个售后服务好的顺河做网站的公司定做!

我遇到的情况是这样的,客户端进行插入操作,这个时候所插入的这个对象缓存在session中,而用户在插入后又对同一个对象,进行修改操作,那么这个时候,同样标识的一个对象又发送到服务端,那么一个session中就存在了两个标识相同的对象,而对象中的内容却不一样,所以Hibernate会报这个错,同样是Hibernate更新出错。那么针对于这种Hibernate更新出错,该如何解决呢?

应该有许多种方法,这里我用了session.clear()在每次更新操作之前,先把session清空掉。代码如下:

 
 
 
  1. public int saveOrUpdate(String classPath, Object obj) {  
  2.     
  3.    try {  
  4.       
  5.       
  6.     getSession().saveOrUpdate(classPath, obj);  
  7.  
  8.     //每次操作之后清空session  
  9.  
  10.     getSession().flush();    
  11.  
  12.     getSession().clear();   
  13.      
  14.    } catch (RuntimeException re) {  
  15.     re.printStackTrace();  
  16.    }  
  17.  

这只是对我所遇到的Hibernate更新出错问题的解决办法之一,如果哪里说的不正确希望大家批评指正,互相学习。

分享文章:Hibernate更新出错的解决
网页网址:http://www.csdahua.cn/qtweb/news13/73263.html

网站建设、网络推广公司-快上网,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 快上网