hibernate 中many-to-many双相关联,怎样来更新一端的表,然而,别一端的表也更新;中间表,且插入一条两张表之间的围护关系?
----------------------------------------
如:tb_purpose 表
 id      purposeName
  1      平时练习
  2      常见部题
------------------------------
tb_question_storeroom 表
 id       subject
  1       夺夺夺夺
  2       三可耕地枯
----------------------------------------
中间表:tb_store_purpose
 purpose_id   store_id
     4           1
     1           2
     2           2
---------------------------------------------
如果:
tb_purpose 表中有一条记录id-8,purposeName-其它问题(已经存在),现在我要为tb_question_storeroom表中的第一条记录(id-1),添加(tb_purpose 表中记录id-8,purposeName-其它问题)这种关系(而中间表tb_store_purpose的所有记录不变,只是添加了,purpose_id--8对应的store_id--1)呢?
--------------------------------------------------------------------------------------------
这是时,tb_store_purpose表就为
  purpose_id   store_id
     4           1
     1           2
     2           2
     8           1其它两个表的记录不变。
谢谢那位朋友,指点一下!

解决方案 »

  1.   

    在做hbiernate的many-to-many的双向关联时,需要了解的几点:一方要设置inverse="true",另一方要设置inverse="false"。inverse="false"的一方保存时,维护多对多之间的关系,且只要将相互的关系告诉这一方即可。如果inverse都设置为true,双方的关系将都不到维护。如果都设置为false,双方将共同维护之间的关系,这时,要将双方的包含关系都要设置清楚,否则将会导致关系维护混乱。如果设置了casade="save-update",只能设置一方,如果双方都设置的话,当更新一方的时候,同时会更新另一方,另一方的更新又会导致一方的更新。