级联删除,是删除子类,在删除主类只要你能做出来没bug就是可以的

解决方案 »

  1.   

    级联删除是删除关联的,比方说,有三个表 一个是中间表,另外两个表依靠中间表关联,就会先删除中间表的记录 inverse=true
      

  2.   

    级联删除是删除相关连的记录 比方说 A  B C三表 B表是中间表A和C依靠表B联系,要删除表A里面的记录,就会删除中间表的记录 inverse=true
      

  3.   

    不太喜欢在hibernate中配置级联操作一般级联操作都放在数据库中,当然也有个别情况。个人观点。
      

  4.   

    Hibernate的级联删除主要是inverse=true来控制的,譬如你数据库有两张表,一张程序员的表,一张项目的表(多对多关系).一个项目可以有多个程序员做,一个程序员也可以参与多个项目.
    这个时候,如果你需要项目管理程序员,在配置文件中你就要在项目的配置那边多个inverse=true,反之,如果你想叫程序员管理项目那么你就要在程序员的配置那边多个inverse=true.
    Hibernate中的级联删除与你数据库中的主外键设置有关.
      

  5.   

    cascade=all
    或者在DAO的实现类里用N个HQL来分别删除.
      

  6.   

    级联的删除应该由One的一方来控制,
    同时在one的XML中set支点里要加入cascade属性,我们一般都设置为cascade="all"
    对所有的操作都进行级联
      

  7.   

    先删除子类,再删除主类,若用级联删除需要在配置文件里面加上lazy="false"