租房网项目,在写后台,管理员可以删除用户,删除用户会删除该用户所发布过的所有房源信息,也可以删除房源,但不会删除发布该房源的用户,如果把一的一方UserInfo.hbm.xml里设置了cascade="all"  和  把多的一方Houses.hbm.xml里也设置了cascade="all",这样的话,删除用户就会删除该用户所发布的所有房源,这样是成功的!,但是反过来,删除房源的时候,就会连发布该房源的用户一块删掉,现在的问题是:cascade该如何设置,才会删除用户也可以删除该用户所发布的房源,删除房源不会删除该用户,不知道说的够不够清楚,纯手打…

解决方案 »

  1.   

    正规的一对多关系中,在一中,添加一个权力反转属性,在对方添加一个级联擦操作属性,设置为all,就没问题了
      

  2.   

    2种 方式 直接用HQL删除不调用delete方法 第二种一对多 删多哪一方 先可以把用多的拿一方比方一个用户对应多个地址 地址那个类由一个user 可以先在调用delete方法之前setUser(null)解除关系 然后在删就不会有问题