郁闷了好久的Hibernate的many-to-many双向关联搞定了
在做hbiernate的many-to-many的双向关联时,一方要设置inverse="true",另一方要设置inverse="false"。inverse="false"的一方保存时,维护多对多之间的关系,且只要将相互的关系告诉这一方即可。
如果inverse都设置为true,双方的关系将都不到维护。
如果都设置为false,双方将共同维护之间的关系,这时,要将双方的包含关系都要设置清楚,否则将会导致关系维护混乱。
如果设置了casade="save-update",只能设置一方,如果双方都设置的话,当更新一方的时候,同时会更新另一方,另一方的更新又会导致一方的更新。
lazy loading指的是当实际要使用到某个数据字段时候,才将其从数据库中去出,避免内存的浪费。
inverse . inverse默认是false .当你指定inverse="true" cascade="none" 时,这个实体对这个属性是没有持久更新的权利的,它把这个属性的管理权利完全交给了关联的另一方了。