首页 > 解决方案 > 将项目添加到@OneToMany FetchType.LAZY 列表而不将列表读入内存?

问题描述

鉴于这种:

@OneToMany(cascade = CascadeType.ALL, orphanRemoval = true, fetch = FetchType.LAZY)
@JoinColumn(name = "systemid")
private List<Thing> things = new ArrayList<>();
... other code ommitted for clarity ...

Thing在无需将现有列表读入内存且不损害二级缓存完整性的情况下,将 a 添加到列表中的安全、正确的方法是什么?

天真的解决方案是:

...getThings().add(newThing);

getThings()但是我想避免阅读整个惰性列表。

可能吗?

标签: hibernate

解决方案


推荐阅读