zoukankan      html  css  js  c++  java
  • hibernate 的配置 cascade

    在hibernate中删除一对多中的多方数据时报错:
    org.hibernate.ObjectDeletedException : deleted object would be re-saved by cascade (remove deleted object from associations): [pojos.UdData#40288669477c2dd501477c2dd6140002]
     
    分析
    字面意思是“被删除的数据因为cascade选项将会被重新保存【方法:将该数据从关联关系中移除】”
     
    解决:

    many.setOne(null);//解除与one的关联关系

    //由于是在set遍历时进行操作,需要在iter中删除,否则会报java.util.ConcurrentModificationException

    //如果是直接取出的many,则不需要此步骤
    iter.remove();       
    s.remove(many);

    session.delete(many);//删除many

     
    其他:
    http://blog.csdn.net/zhujiaxing666666/article/details/8499103
    该blog中提到了其他几种方法,并分析了优缺点
     
    cascade的设置指明:设置方的操作对另一方的影响
    如果在多方也设置成all,则在删除一个many记录时把one也会删除掉,一定要注意
  • 相关阅读:
    Python之datetime模块
    PEP8规范 Python
    redis操作命令
    Django之Cookie、Session和自定义分页
    登录之验证码相关实现
    装饰器进阶
    js中的cookie使用和vue-cookie的使用
    vue-cli的安装使用
    Django之进阶相关操作
    PyMySQL模块的使用
  • 原文地址:https://www.cnblogs.com/malaya/p/3877403.html
Copyright © 2011-2022 走看看