由于关联关系是一对多和多对一的关系,于是在代码中需要删除多的一方的对象时出现了

deleted object would be re-saved by cascade (remove deleted object from associations)

对于这个异常,大概有有一下3中方法

方法1 删除Set方的cascade:(缺点:子对象和父对象不能进行级联更新,没意义)

方法2 在many-to-one方增加cascade 但值不能是none  (缺点:子对象也级联到父对象,删除子对象会将父对象一并删除,也不可取)

方法3(亲测成功,而且很方便),先看下面代码:

order = (Order) session.get(Order.class, 2);

order.getCustormer().getOrders().remove(order);

order.setCustormer(null);

session.delete(order);

order是多的那一方,如果要删除一个order对象,直接调用session.delete()方法肯定就会报开头那个对象

为了解决这个问题,就可以先得到与该order对象对应的一的那一方(即customer对象),然后先将该order对象从customer对象中删除,并且将该order对象的customer对象设置为null,这样再执行删除时就不会出现那个异常了。

文章出自:http://www.cnblogs.com/xiaoluo501395377/archive/2013/03/02/2940290.html

解决hibernate删除时的异常的更多相关文章

  1. 解决hibernate删除时的异常 deleted object would be re-saved by cascade (remove deleted object from associa

    今天在做项目时,需要删除一个对象,由于关联关系是一对多和多对一的关系,于是在代码中需要删除多的一方的对象时出现了 deleted object would be re-saved by cascade ...

  2. 解决log4cxx退出时的异常

    解决log4cxx退出时的异常(金庆的专栏)如果使用log4cxx的FileWatchdog线程来监视日志配置文件进行动态配置,就可能碰到程序退出时产生的异常.程序退出时清理工作耗时很长时,该异常很容 ...

  3. 在web.xml中添加配置解决hibernate 懒加载异常

    在web.xml添加如下,注意:在配置在struts2的拦截器之前,只能解决请求时出现的懒加载异常:如果没有请求,还需要lazy属性的添加(比如过滤器) <!-- 配置Spring的用于解决懒加 ...

  4. .net安装部署“Error 1001 在初始化安装时发生异常” 的解决方法

    状况描述:打包安装后,如果删除安装目录中的某个文件,这时从桌面快捷方式启动软件系统会自动运行修复程序,此时因为路径问题会报出“错误 1001 在初始化安装时发生异常xxx”的异常.(前提是你的安装部署 ...

  5. .net应用程序安装部署时异常 Error 1001. 在初始化安装时发生异常 System.BadImageFormatException:未能加载文件或程序集 的解决办法【成功解决】

    采用.net 4.0框架开发的一个桌面应用程序在某学校的一体机(Windows7的32位操作系统)上做安装部署时抛出异常,安装程序回滚,多次尝试仍不成功. Error 1001. 在初始化安装时发生异 ...

  6. C# Webservice 解决在运行配置文件中指定的扩展时出现异常。 ---> System.Web.HttpException: 超过了最大请求长度问

    摘自: http://blog.csdn.net/gulijiang2008/article/details/4482993 请在服务器端配置 方法一: 在通过WebService处理大数据量数据时出 ...

  7. 使用XmlInclude解决WebService调用时无法识别子类的异常

    一.定义抽象类及子类,WebMethod实际返回子类参数 //使用XmlInclude解决WebService调用时无法识别子类的异常 [System.Xml.Serialization.XmlInc ...

  8. java spring 等启动项目时的异常 或 程序异常的解决思路

    今天搭建ssm项目的时候,因为pagehelper的一个jar包没有导入idea的web项目下的lib目录中,异常报错找不到pagehelper,这个问题在出异常的时候疯狂crash,让人心情十分不舒 ...

  9. WebLogic发布S2SH应用时提示ClassNotFoundException: org.hibernate.hql.ast.HqlToken异常

    使用Spring+hibernate如下 <properties> <!--定义方言.fetch深度.是否显示sql--> <property name="hi ...

随机推荐

  1. 编写ros串口节点,使用官方serial包

    参考http://www.roswiki.com/read.php?tid=557&fid=39 1.通过sudo apt-get install ros-<distro>-ser ...

  2. mysql数据库的备份与恢复

    假定我们的目标数据库是 test, 表是 user.假定mysql的用户名和密码均为 root. 备份与恢复所用的程序分别是mysql软件包提供的 mysqldump 命令和 mysql 命令.思想很 ...

  3. asp.net5 操作Cookie

    写入Cookie var CookieOption = new CookieOptions(); CookieOption.Path = "/"; //on localhost, ...

  4. 学习了quartz.net2.0的心得

    由于项目中要运用到此调度方法,所以抽空学习了下,简单的用法可以掌握了 首先作为没有用过的人来说,怎么用呢? 于是百度了下原来先要下载 quartz.net2.0, 然后我就去下了个quartz.net ...

  5. Solr5 DataImport 处理1对多关系

    “问题” 和“派发处理” 是2个对象. 每个问题可以被派发N次, 最后结束问题. 实际查询中数据量可能很大,同时即可以从问题查派发部门, 也可以从派发情况查询问题(如本部门处理的问题) 使用的技巧就是 ...

  6. Swift_UI_UILabel

    Swift_UI_UILabel import UIKit class ViewController: UIViewController { override func viewDidLoad() { ...

  7. gerrit session expired 怎么解决,搜索未果

    gerrit session expired,怎么解决,搜索未果

  8. 这次是Selenide测试自动发送博客

    asdfasfdfsdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafdsfasdfdas

  9. 【小梅哥FPGA进阶学习之旅】基于Altera FPGA 的DDR2+千兆以太网电路设计

    DDR2电路设计 在高速大数据的应用中,高速大容量缓存是必不可少的硬件.当前在FPGA系统中使用较为广泛的高速大容量存储器有经典速度较低的单数据速率的SDRAM存储器,以及速度较高的双速率DDR.DD ...

  10. 解析和风天气API的json(objective-C实现)

    暑假在家闲着没事干,心血来潮想做个天气预报APP玩玩,听说和风天气API很好,于是注册并试了下,结果它的JSON是这样的(拿我的家乡武义为例子) {"}},"status" ...