CQ/AEM-什么是';资源';在CQ表单组件中?

CQ/AEM-什么是';资源';在CQ表单组件中?,aem,web-component,sling,Aem,Web Component,Sling,我试图理解CQ表单组件是如何工作的。 我发现他们经常使用一个叫做“资源”的变量。例如,在每个组件的开头总是这样: final String name = FormsHelper.getParameterName(resource); final String id = FormsHelper.getFieldId(slingRequest, resource); final boolean required = FormsHelper.isRequired(resource); 我知道Slin

我试图理解CQ表单组件是如何工作的。 我发现他们经常使用一个叫做“资源”的变量。例如,在每个组件的开头总是这样:

final String name = FormsHelper.getParameterName(resource);
final String id = FormsHelper.getFieldId(slingRequest, resource);
final boolean required = FormsHelper.isRequired(resource);

我知道Sling把一切都当作一种资源。但这一特定的“资源”究竟是什么?它的定义是什么?它来自哪里?它包含什么?

资源变量是org.apache.sling.api.resource.resource的一个实现,它是一个对象,表示jcr存储库中的一个节点实体,但与较低级别的
javax.jcr.node
对象相比,它有一些额外的方便方法。 在这种情况下,提到的资源可能代表组件的资源

要解释sling使用术语资源的原因,请执行以下操作:

资源是restful API中的一个基本概念。 资源是具有关联数据、与其他资源的关系以及对其进行操作的方法的类型化对象

Sling实际上是Java内容存储库顶部的restful层。 对于sling层,存储库是一个虚拟的资源树。
我强烈建议您阅读官方文档以了解有关此主题的更多详细信息

注意,虽然JCR是Sling的主要持久性,但肯定还有其他资源提供者,请参阅和。