使用 DB4O。我有一个由 object2 组成的 object1,如下所示:
public class Object1Class {
private Object2Class;
}
如果我删除 object1,关联的 object2 将被删除,没有问题。
但是,如果我删除 object2,object1 仍然包含 object2。理想情况下,当我删除 object2 时,object1 应该显示对 object2 的空引用。
所以,我的预感是 DB4o 在更新 DOWN 对象树时会级联,但不会向上级联对象树。
我对吗?
如果不清楚,我的目标是在更新、更改或删除子对象时更新父对象。
- 也许我需要.store()
在更新子对象后调用父对象?
- 会transparent persistence
解决这个问题吗?
这是我的配置:
EmbeddedConfiguration config = Db4oEmbedded.newConfiguration();
config.file().generateUUIDs(ConfigScope.GLOBALLY);
config.common().objectClass(MyModel.class).cascadeOnDelete(true);
config.common().objectClass(MyModel.class).cascadeOnUpdate(true);
config.common().objectClass(MyModel.class).cascadeOnActivate(true);
config.common().updateDepth(5);
config.common().activationDepth(5);
另外,请注意我所有的持久化类都继承了 MyModel 类。
以下是有关更新深度的一些信息: