Java JCR/Adobe AEM:如何在不使用查询的情况下直接访问节点?

Java JCR/Adobe AEM: How do I access the node directly without using queries?

同上。我看过“getNode”(javax.jcr.node 的一部分),它需要一个相对路径。我希望有一个我还没有看到的函数接受绝对路径。

代码示例:

Node node = Node.getNodeByAbsulotePath("/content/my-folder-here/my-node-here");

您需要一个 javax.jcr.Session 对象来访问存储库。它有想要的 session.getNode(absPath) 方法。

每个节点对象都有一个指向其会话的反向链接,因此您可以通过 node.getNode(relPath) 向前遍历节点结构,或者仅通过 node.getSession().

获取会话

参见:

https://docs.adobe.com/content/docs/en/spec/jsr170/javadocs/jcr-2.0/javax/jcr/Session.html#getNode(java.lang.String)

或 JackrabbitSession:

https://jackrabbit.apache.org/api/2.12/org/apache/jackrabbit/api/JackrabbitSession.html