`
xgs_1983
  • 浏览: 39543 次
  • 性别: Icon_minigender_1
  • 来自: 吉林
社区版块
存档分类
最新评论

JSR 170:Java内容仓库(Java Content Repository,JCR)API收藏

阅读更多
JCR试图定义一组内容管理的标准接口,以便标准化内容管理器模块。如果所有的内容管理器都以同样的API提供服务,那么各种内容管理器产品之间将具有可互换性。JCR规范分为两个level。level 1定义了一组基本的内容仓库操作,包括内容的读、写、删除、搜索、内容元素的序列化等等;level 2提供了高级的功能,例如事务管理、版本控制、内容观察、访问控制、内容锁定等。

JCR定义的内容仓库模型是一个树状结构,树上的元素(Item)分为两类:节点(node)和属性(property)。整棵树具有单根结构。从根开始,内容元素的定位采用UNIX文件系统风格,例如“/A/B/ccc”(根下面A节点的B子节点的ccc属性),相对定位符(“.”和“..”)也是可用的。每个属性有且仅有一个父节点,不能有子元素。每个节点可以有一个或多个父节点(根节点无父节点),也可以有任意多个子节点或属性。注意,节点可以有多个父节点,也就是说可以从不同的路径导航获得同一内容,这是网站常见的一个需求(来自不同栏目的两个链接指向同一篇文章)。

除了Node和Property之外,API中还有几个重要的对象。Repository代表整个内容仓库,Credentials代表一个用户身份,Ticket代表进入该内容仓库的门票。获得内容根节点的代码大致如下:

  Repository repository = (Repository)java.rmi.Naming.lookup("MyRepo");
  Credentials credentials = new SimpleCredentials("MyName", "MyPassword".toCharArray());
  Ticket myTicket = repository.login(credentials, "MyWorkspace");
  Node root = myTicket.getRootNode();

从root节点就可以遍历访问整课内容树。Ticket对象也支持通过绝对路径或者UUID直接获得某一内容元素(节点或属性)。

照我的理解,现在我们的内容管理器产品已经具备了兼容level 1的功能。但是这个标准API对于我们设计内容管理器有多大程度的帮助?这个问题要去问魔之眼。
分享到:
评论

相关推荐

    Java Content Repository API(JSR-170)

    Content Repository for Java(tm) Technology API 1.0 Version: 1.0 Type: Full Release ====================================================================== 0. Index --------------------------------...

    Content Repository API for Java Technology Specification

    Content Repository API for Java 技术规范(简称 JCR)是为 Java 平台设计的一套标准接口,用于管理和操作内容存储库。该规范由 Java 社区过程(Java Community Process, JCP)发起,并通过 JSR-170 进行标准化工作...

    JCR 170 文档

    描述:本文档为JCR(Java Content Repository)的开发指南,全面解析了JCR的API及其在Java技术规范中的应用。JCR是JSR 170(Java Specification Request 170)的一部分,旨在提供一个统一的数据存储与访问接口,适用...

    Java Specification Request 170

    Java Specification Request 170(JSR 170)是Java社区进程(JCP)发布的一个重要标准,它定义了“内容存储库API for Java Technology”,也被称为Java Content Repository (JCR) API。这个API为Java应用程序提供了...

    modeshape-jcr-api-3.7.4.Final.zip

    JCR API是Java标准(JSR-170和JSR-283)的一部分,用于访问内容存储库,它提供了统一的方式来访问、管理和操作结构化和非结构化内容。 【描述】"android-navigation.zip" 提供的是一个简单的Android应用程序导航...

    phpcr:Java内容存储库(JCR)到PHP的端口

    PHPCR是Java Content Repository的下一版本JSR-333的一部分。 这里有很多信息: : 文献资料介绍PHP内容存储库是一个API。 也就是说,它定义了一种如何访问和操纵内容的标准化方法。 与任何常规API一样,主要目标是...

    jcr-0.7.2.1.tar

    JCR,全称为Java Content Repository(Java内容存储库),是Java世界中用于存储、管理和检索非结构化数据的一种标准接口。它基于JSR-170和JSR-283规范,提供了一种灵活的数据存储模型,适用于各种内容管理系统和文档...

    jackrabbit内容仓库的实例(两个工程)

    杰克兔(Jackrabbit)是Apache软件基金会的一个开源项目,它是一个完全实现JSR 170(Java Content Repository API,即JCR)规范的内容管理系统(CMS)内核。JCR提供了一种标准的方式来访问和管理半结构化数据,如网页...

    Alfresco Developer Guide

    该系统基于Java技术栈,利用Java Content Repository (JCR) 规范,即JSR170,来实现内容存储和检索。 **Java Content Repository (JCR)** 是一个标准接口,定义了与内容存储库交互的方式。JSR170 提供了一种统一的...

    jcr_in_action.pdf

    《JCR in Action》一书深入探讨了Java Content Repository(JCR)的各个方面,特别是Apache Jackrabbit作为其开源实现的应用。以下是对该书籍所涵盖的关键知识点的详细解析: ### JCR与Apache Jackrabbit JCR是一...

    PHPCRJavaJCRPHP

    JCR是由Java Community Process (JCP)制定的标准(JSR 170和JSR 283),用于定义一个内容管理系统的API。它提供了一种统一的方式来访问和管理数字资产,包括文档、图片、视频等,以及它们的相关元数据。JCR支持事务...

    jbpm(java 企业工作流程管理)开了包(全)

    1. jcr-1.0.jar:这部分可能包含了Java Content Repository(JCR)的实现,JCR是Java Specification Request(JSR)170的一部分,用于访问和管理内容仓库。jbpm可能利用JCR来存储和检索流程相关数据。 2. jbpm-...

    appfuse 2.0.2文档 pdf

    压缩包内的文件名为"JCR document.doc"和"Jackrabbit Architecture.doc",这两个文档可能分别涉及到Java内容仓库(Java Content Repository, JCR)和Jackrabbit,一个流行的JCR实现。 JCR是Java Specification ...

    Content Repository 5, Content-driven CMS-开源

    Content Repository 5中间件包含Java Technology API(JCR,在JSR 170和JSR 283中指定)的Content Repository的完全一致的实现。 这是一个分层的内容存储库,支持结构化和非结构化内容,全文搜索,版本控制,事务,...

    jackrabbit-jcr-commons-2.5.0.zip

    JCR是JSR 170和JSR 283定义的标准,它定义了一种访问和管理结构化内容的API,类似于文件系统但更加灵活,支持元数据和版本控制。 在描述中提到的"common-gs1.zip",这可能是指一个与GS1(全球标准一)相关的实用...

    bsh.jar/ jcr-1.0.jar/ jbpm-identity.jar/ jbpm-jpdl.jar

    **jcr-1.0.jar**:这个文件代表了Java Content Repository (JCR) API的实现,它是一个标准接口,用于访问和管理结构化内容仓库。JCR规范是JSR 170的一部分,允许开发人员存储、检索和管理非结构化的数据,如文档、...

    音视频-编解码-面向流媒体协同创作的内容管理关键技术研究.pdf

    JSR-170是Java Content Repository (JCR) API的标准,它定义了访问和管理内容仓库的一套接口,旨在提供统一的内容存储和检索机制。作者通过应用JSR-170,提高了流媒体内容管理的效率和灵活性。 接着,论文设计了一...

    Apache Jackrabbit入门

    JCR是Java Specification Request (JSR) 170和JSR 283定义的标准,旨在提供一个统一的接口来访问和管理非结构化内容,如文本、图像、文档等。在本文中,我们将深入探讨Apache Jackrabbit的基础知识,以及如何开始...

Global site tag (gtag.js) - Google Analytics