解决方案 »

  1.   

    inverse=true 用在双向关联, 默认是inverse=false,采用inverse=false不会报错,但是会导致重复的sql生成,hibernate文档里写的是 强烈建议在双向关联时,在一方配置为 inverse=true,推荐配置在 one这一边.
      

  2.   

    1对多,父表配置inverse=true,则hibernate子表的实体类被删除时,父表不受影响,父表实体类被删,子表不会级联删除,如果父表和子表都不配置,子表实体类被删,会先找父表确认(多一条select);父表类被删,子表级联删除当然需要你数据库建模符合第三范式,即子表外键关联父表主键
      

  3.   

    to qingyuan18, 由于子表外键关联主表主键,不管配不配置inverse=true, 效果都是一样的吧,如果不设置级联删除,就不可以删除父表,如果设置了级联删除,就父表和子表都删除,我测试了一下,没发现设置和不设置有什么区别,能给我点示例代码么?