在我的应用程序中,我使用延迟加载。
我的要求是,我只想在它们上存在某个注释(用户定义)时检索集合。
为此,我编写了一个hibernate监听器,当我在集合中找不到该注释时,我将它们设置为NULL
中的DO
,否则hibernate本身将会遇到这种情况并将检索该集合。
但最终发生的事情是,如果我将集合设置为null
,则在DATABASE中清除所有相关实体。
例如:customer
有一组orders
。我发现没有注释,因此if块将执行并将设置customerDO.setOrders(NULL)
。
我的交易是只读的,然后才会触发更新。我也在用春天。 有没有其他方法可以达到我的要求?
我还考虑过分离实体,但我没有访问实体管理器,而且上层没有提供对实体管理器的访问权。