db4o保留对象的标识

时间:2009-05-26 15:03:03

标签: java db4o

有没有办法在db4o中保留对象标识。

假设我在嵌入式db4o中存储了一个BigDecimal。

当我读了两遍时,我得到了两个具有相同值的不同对象(这很明显)。

是否有任何设置强制db4o缓存查询结果,以便两个查询将返回对同一实例的引用,或者我是否必须自己执行此操作?

3 个答案:

答案 0 :(得分:1)

根据我的经验,在同一个ObjectContainer上运行两次相同的查询应该每次返回相同(相同)的对象。

如果您需要对象的标识,则不应关闭并重新打开查询之间的ObjectContainer。

答案 1 :(得分:0)

Db4o在内部使用IDs and UUIDs,您可以根据需要访问它们。另外值得一读的是this

答案 2 :(得分:0)

你可以使用它的UUID为你的每个对象创建一个id,我的意思是为对象添加一个属性ID并给它UUIDs值并存储它,以更新你可以通过该Id检索它的对象并更新它