Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
有没有办法在 db4o.xml 中保留对象身份?
假设我将 BigDecimal 存储在嵌入式 db4o 中。
当我阅读它两次时,我得到两个具有相同值的不同对象(这很明显)。
是否有任何设置强制 db4o 缓存查询结果,以便两个查询返回对同一实例的引用,还是我必须自己做?
根据我的经验,在同一个 ObjectContainer 上运行两次相同的查询应该每次都返回相同的(相同的)对象。
如果您需要对象的身份,则不应在查询之间关闭并重新打开 ObjectContainer。
Db4o 确实在内部使用ID 和 UUID,如果需要,您可以访问它们。另外值得一读的是这个。
您可以使用它的 UUID 为您的每个对象创建一个 ID,我的意思是为该对象添加一个属性 ID 并为其赋予 UUID 值并存储它,要更新一个对象,您可以通过该 ID 检索它并更新它