java - Apache Sling 中 resourceResolver.adaptTo(Session.class) 的用途是什么?

标签 java aem jcr sling

我是 Apache Sling、CQ5 等的新手。

在我们的代码库中,我们有一个类似于这样的代码片段:

void perform(SlingHttpServletRequest request, SlingHttpServletResponse response) {
    ResourceResolver resourceResolver = request.getResourceResolver();

    Session session = resourceResolver.adaptTo(Session.class);
    PageManager pageManager = resourceResolver.adaptTo(PageManager.class);
}

adapTo 在这里做什么?

还有我可以阅读以开始使用 Sling、CQ5 等的良好文档/用户手册吗?

最佳答案

许多 sling 对象中的 adaptTo() 方法允许“转换”对象。 Sling 可以决定添加一个 resolver.getSession() 方法,但那样不会很灵活。 adaptTo 的好处在于它是动态的。您可以创建适配器以在不同类型之间进行转换(它们是 OSGi 服务)。 Sling 和 CQ5 还包括 bunch of adapters默认。 sling Wiki 有一些关于 adapters 的文档.

关于如何开始使用 Sling 和 CQ5,sling site是一个很好的起点

关于java - Apache Sling 中 resourceResolver.adaptTo(Session.class) 的用途是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21715989/

相关文章:

java - ArrayList 初始化等价于数组初始化

java - 让 Asynctask 开始工作

aem - 是否可以在 cq :Widget (textarea)? 中使用正则表达式字段

java - 对 sling servlet 的发布请求不适用于发布实例

java - Jackrabbit 存储库位置

java - 是否可以使用Alfresco作为JCR框架?

java - 无法冒充 - Jackrabbit

java - 如何在 Spring Boot 应用程序中保存 Postgres 中的对象列表

java - 访问另一个类中的arraylist

java - AEM 6.3 使用 OSGi R6 注释和 Sling 模型