基于EER图,从技术上讲,Task
和TodoList
属于ManyToMany
关系,但我没有使用联结表,而是从{创建了这两个OneToMany
关系{1}}至Task
以及TaskList
至TodoList
。
我尝试将TaskList
与ListTask
或Task
关联,然后尝试通过清除TodoList
或{{ListTask
中的参考列表来删除Task
1}},然后保留TodoList
或Task
,其工作正常,TodoList
已消失,更新的ListTask
或Task
实体已清除{{ 1}}。
但是,当我将TodoList
与ListTask
和ListTask
相关联时,则尝试删除,奇怪的是,从Task
方面删除时,不会生成删除查询冬眠。在我从TodoList
方面删除之前,它终于奏效了。我在Task
和TodoList
上调换了list.clear()
的调用顺序,然后TodoList
将首先删除Task
,左TodoList
,而不是ListTask
处理并创建错误。
我尽我所能使Task
和ListTask
相同,但仍然没有运气。删除操作适用于一方并坚持下去。我知道桌子的设计并不完美,但是真的试图找出为什么以及hibernate选择哪一方进行删除。
TodoList