作为this question的后续,我有一个包含子实体集合的父实体。
更新父实体时,我想将子集合设置为新值,而不必手动删除(可能通过父ID删除)集合中的旧项目。
这样的事情:
parent.set_children(newListOfChildren);
当我执行上述操作时,新的子实体列表将被保留,但旧的子实体仍然存在。
有没有办法实现这个开箱即用的方法?
我看到的替代方法是擦除父级(擦除所有孩子),然后用新孩子重新创建它,但感觉很狡猾!
任何帮助表示感谢。
答案 0 :(得分:1)
假设如下:
@Persistent(defaultFetchGroup = "true")
@Join(column = "user_id")
@Element(column = "email")
private List<String> emails;
从那里,您可以初始化您的架构,然后在其他时间查找父对象时,您可以clear()
列表并添加新条目。