我有两个表与多对多关联.
- 数据库片段:
加载
Id
名称
会议
ID
日期
sessionsloads
LoadId
SessionId
- Hibernate映射片段:
/* loads.hbm.xml */
<set name="sessions" table="sessionsloads" inverse="true">
<key column="LoadId" />
<many-to-many column="SessionId" class="Session" />
</set>
…
/* sessions.hbm.xml */
<set name="loads" table="sessionsloads">
<key column="SessionId" />
<many-to-many column="LoadId" class="Load" />
</set>
Run Code Online (Sandbox Code Playgroud)
为了从关联表sessionsloads中删除一个条目,我执行以下代码:
Session session = sessionDao.getObject(sessionId);
Load load = loadDao.getObject(loadId);
load.getSessions().remove(session);
loadDao.saveObject(load);
Run Code Online (Sandbox Code Playgroud)
但是,启动后,此代码没有任何改变.
删除关联的正确方法是什么?