多对多删除有关问题
多对多删除问题
比如folderVO为主表(也是主控方),dmsVO为子表(被控方),删除子表数据时(即,删除dmsVO),先解除关系,再删除子表中的数据。像下面这样:
folderVO.getDmsVOs().remove(dmsVO); dmsVO.getFolderVOs().remove(folderVO); try { dmsRemoveDAO.remove(dmsVO); } catch (GenericException e) { e.printStackTrace(); }
这样会删除两表的关系,和子表的数据:
Hibernate: delete from RELATE_FOLDER_DMS where folder_id=? Hibernate: delete from DMS where dms_id=?