如何在调用session.save()之前获取修改后的节点列表?

时间:2014-11-19 13:42:40

标签: cq5 jcr aem sling

在调用会话的保存方法之前是否可以获取修改后的节点列表?我想知道修改或添加了哪些节点,现在我使用一种非常低效的方式:

Looping through the 'content' path and calling these methods for each node:
  node.isModified()
  node.isNew()

看起来非常糟糕的解决方案,但我找不到更好的问题。

提前感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

您可以尝试使用SQL2查询自给定时间戳

以来更新或修改的节点

例如,自2014-10-27T14:00:00.801-08:00之后修改或创建的所有节点:

SELECT * FROM [nt:base] as s WHERE [jcr:lastModified]> ' 2014-10-27T14:00:00.801-08:00'或[jcr:created]> ' 2014-10-27T14:00:00.801-08:00'

注意:性能将根据返回的数据集

而有所不同