1

我正在学习如何使用内容存储库(Jackrabbit),我想知道如何检查一个节点是否真的被删除了。我使用数据存储,我知道它是不可变的,但是节点必须存储在某个地方?我已将持久性管理器配置为使用 postgresql。一切正常,我只想知道如何才能看到该节点实际上已被删除。

4

1 回答 1

2

不确定您所说的“实际删除”是什么意思。在 JCR 级别, Session.itemExists(path) 将告诉您在指定路径是否有项目(即节点或属性)。使用管理员会话调用它,以确保访问控制不会妨碍您。

如果您正在寻找相应数据的磁盘删除,这取决于 PersistenceManager 实现 - 有些只会按需垃圾收集已删除的数据,而另一些会在 JCR 级别删除时立即将其删除。较低层(数据库、操作系统、磁盘)也可能会将已删除的数据保留一段时间。

于 2013-08-05T07:33:04.550 回答