数据库修改多对多的中间表的记录的技巧

时间:2022-08-27 23:39:58

一、把中间表相应的字段先删除,然后再添加

*当单方表是从数据库中查得持久化对象必须把此对象的set容器用clear()清空,

*同时把一对多的级联配置文件中的级联风格设置为cascade="all,delete-orphan",

*把中间表中要修改的对象对应的数据全部删除,

*通过save()或merge()重新持久化中间表的对象

------此种方法可以在只修改中间表的数据,而不修改单方表的数据时。

二、通过级联来修改单方表同时修改中间表

*当单方表是从数据库中查得持久化对象必须把此对象的set容器用clear()清空,

*同是把一对多的级联配置文件中的级联风格设置为cascade="all,delete-orphan",

*把中间表对应的po对象添加到单方表的set容器中,

*利用merger()修改单方表。

------此种方法可以在单方表和中间表同时修改时使用。