Atitit file cms api jcr1 jcr2 目录 1.1. 么是JSR-170幸运的是,被称为Java内容仓库(Java Content Repository,JCR)的JSR-

Atitit file cms api jcr1  jcr2

 

目录

1.1. 么是JSR-170幸运的是,被称为Java内容仓库(Java Content RepositoryJCR)的JSR-1701

1.2. 内容仓库有四种基本操作:读、写、查询和删除。  2

1.3. 仓库的功能被划分为几个“兼容性”级别 2

2. Jcrv1 3

2.1. Xpath 3

2.2. JCR v2.0  (JSR-283 3

 

 

1.1. 么是JSR-170幸运的是,被称为Java内容仓库(Java Content RepositoryJCR)的JSR-170

试图以独立于具体实现的方式解决这些(以及其它)问题。即,不论底层资源(如,数据库,本地或虚拟文件系统)是什么,API都将相同。在数据存储之上,JCR提供诸如访问粒度控制、版本控制、内容事件、全文检索和过滤等内容服务。由Day Software领导的JSR-170背后的专家组令人印象深刻,包括内容管理系统(CMS)提供商Vignette、Hummingbird Ltd.、Stellent和通用Java驱动解决方案提供商,如BEA Systems、IBM和Oracle。该规范很可能成为内容管理和文档存储方面事实上的标准。 
经过几乎2年半的努力,工作最终于2005年6月完成,在javax.jcr包中,API包含了大约50个类(主要是接口和异常)。2006年早些时候,发布了初始1.0版本的参考实现(JackRabbit)。 
JSR-170概览Java内容仓库建立在仓库(除了是“用于安全地保存货物的地点”的通常含义之外)概念之上,它提供了几个操作数据的特性。仓库使用“树结构”保存信息,如下图,树由节点和属性组成。圆圈代表节点,方框代表属性。1个节点有且只有1个父亲,有任意数目的孩子(子节点)和任意数目的属性。1个属性有且只有一个父亲(它是节点),它没有子节点,由一个名字和一个或多个值组成。属性值的类型可以是:布尔(Boolean)、日期(Date)、双精(Double),长整(Long),字符串(String)或流(Stream)。只有属性可以被用来存储信息,节点则被用来创建树内部的“路径”。在某种程度上,这棵树类似文件系统的结构,节点是目录,属性是实际的文件。 
仓库的功能被划分为几个“兼容性”级别,每个级别提供一组特定的特性: 

 

 

 

1.2. 内容仓库有四种基本操作:读、写、查询和删除。

1.3. 仓库的功能被划分为几个“兼容性”级别

,如图1-1所示。每个级别提供一组特定的特性:
1)    级别1:对于所有实现,级别1是必须的,它提供对仓库的读访问,简而言之:对节点和属性的读访问。对属性值的读访问。输出到XML/SAX。支持XPATH语法的查询服务。
2)    级别2:提供写功能,增加和移除节点和属性。对属性值的写操作。从XML/SAX输入数据。
3)    可选级别:这个级别包含一些高级特性,它并不是读写仓库所必需的,但确是真正为JSR-170增色的部分。这个级别包括:
a.事务:它使仓库有可能与JMS或JDBC资源一起工作。
b.版本标定:允许仓库记录节点的不同状态,以备日后检索。规范对于这个主题有相当的篇幅;该特性使得用JSR-170作为后端构建一个CVS的克隆成为可能。
c.事件:亦称观察,它允许仓库内发生的任何活动都会被通知给客户端。
d.锁:可以冻结部分树的功能,它可以有效地返回一个只读的子树。

 

2. Jcrv1

2.1. Xpath

 

2.2. JCR v2.0  (JSR-283

· 

JCR-SQL2, which expresses a query as a string with syntax similar to SQL, and

· 

· 

JCR-JQOM (JCR Java Query Object Model), which expresses a query as a tree of Java objects.

· 

 

Java Content Repository API 简介.html

posted @ 2018-06-15 19:15  attilaxAti  阅读(32)  评论(0编辑  收藏  举报