Aem内容如何遍历并解析到表示层?
答
这个问题的答案可能非常详细,因为当“内容”被解析和呈现时(表现层)有很多事情要做。
你可以在官方AEM documentation找到更详细的解释。
它的要点是,Sling会查看所调用的URL,并试图找出此URL指向存储库中哪些“内容”(或更确切地说,“资源”)。通常,URL和资源之间存在一对一的关系。
但是这里变得更复杂一点。大多数情况下,这个“资源”是一个页面。一个页面由很多较小的部分组成。这些部分被称为“组件”。一个简单的例子就是一个包含博客文章的页面。您可能需要页面标题,页脚,导航和其他所有内容之间的组件,例如文章和博客文章的图像。所有这些不同的部分都是组件。
Sling将查找页面上的所有组件,并将分别渲染所有组件以构建页面。大多数组件将具有Sling用于呈现组件的JSP或HTL(Sightly)模板。另一方面,这些模板可能有自己的内部逻辑,可能使用OSGi服务或servlet来构建显示的内容。
这只是一个简单的例子,向你展示它是如何工作的。但是它背后要复杂得多。作为一名开发人员,您可以在幕后进行各种不同的事情来影响这一过程。其中一个例子是Sling Filter。