JSR170/283和Jackrabbit介绍

JSR170/283Jackrabbit介绍

1 背景概述

 由于近期公司需要我们自主开发一个管理非结构化文档的档案系统。由于不允许购买CMS平台,所以我对开源的CMS进行了一些简单研究,以下分享一下我的研究成果。

  本文目的是介绍JSR170/283标准,以及内容管理/内容仓库等概念;并且说明JSR170/283Jackrabbit以及应用程序之间的关系。由于oracle11g的一些新特性,在本文最后,将对oracle11g的结构化和非结构化存储进行一些粗略的探讨。

2 内容仓库/内容管理概念

内容仓库CRcontent repository)指存储文件、数据的系统,这个系统地底层实现可能是关系数据库、文件系统或者一个XML文件等,实际存储数据的设备/系统;但CR隐藏了这些底层实现,并且支持存取文档操作以及一些高级操作:存取控制、搜索、版本管理等功能。因此可将CR视为传统数据存储的一个超集。

内容管理CMS (content management system)指在CR的基础上,进行更客户化的开发。

由于市场上有许多的CMS厂商,他们的CMS又都拥有自己的CR系统。这造成了每个CMS厂商的CR系统的API都不相同。为了解决这个问题,Apache 推出了内容仓库API标准JSR170/283Java Content Repository API)。

3 JSR170/283标准

JSR170标准是JCRJava Content Repository1.0JSR283标准是JCR2.0JSR170/283 标准定义了对CR的编程接口。JSR283的架构和170相同,仅增加了一些API 见下图,JSR170/283Jackrabbit以及CMS的关系:

13353915_200909140916051.thumb.jpg

JSR170/283将内容仓库划分成个多workspaceWorkspace以树形结构来组织:

13353915_200909140916111.thumb.jpg

rootNodeworkspace的根节点。数据保存在Property中。

JSR170/283将实现划分成3个层次,任何实现JSR170/283CR 可以选择实现全部或者一部分。

1)  level1:提供reading, exporting, searching,以及对workspace节点维护;

2)  level2:在level1的基础上,提供writing, importing等一系列写操作

3)  optional:在level1,2的基础上,提供versioning, transaction(JTA),query using SQL, explicit locking, content observation

     JSR170/283提供API包:javax.jcr.* 定义了以上各层的接口。(这些接口操作和管理都是针对Node进行)

4 Jackrabbit介绍

  Jackrabbit是对JSR170/283的一个参考实现(即:将JSR170/283中定义的接口具体化)。Jackrabbit实现了level1,2optional层。

  Jackrabbit1.x 是实现JSR170,目前稳定版本是1.6.0 Jackrabbit2.x实现JSR283,目前还没有稳定版本。

  Jackrabbit可以和Struts+spring+hibernate框架结合良好。SpringModules提供将Jackrabbit集成到Spring框架中的方法(如何配置)

 

**注:SpringModules: 包含一组用于扩展Spring框架的工具、附件和模块。Spring Modules的核心目标是促进Spring与其他项目相集成而不需要打乱或扩大Spring core

5 Oracle 11gSecureFile

   Securefile功能是Oracle 11g中对大对象(Lob)存储格式的完全重新设计实现,原来的Lob存储格式现在通称为basixfile,它仍然是默认的存储方法,但是Securfile关键字开启了新的存储方法,它允许加密、利用压缩节约空间和数据重复消除。

   Securefile组织文件数据比旧的LOB格式字段要快10倍以上(据oracle官方文件);使用Securefile将非格式化文件作为数据库表的一部分,这样应用程序不需要处理关系数据库和文件系统多个接口;可使用数据库的特性;

6 oracle xml DB

1.         Oracle XML DB 是支持文档为中心或者内容为中心的XML文件。XML文档是层次化数据,因此Oracle XML DB根据XML文件的特色,提供层次索引和XML的存储仓库。

2.         Oracle XML DB架构包括两个主要特色:

1)         XMLType tables and views storage

2)         Oracle XML DB repository

13353915_200909140916161.thumb.jpg

 

 

7 Oracle对数据的划分

Oracle认为数据可以分成3类:

1)  结构化数据:这类数据指可以使用关系数据库表来存储和管理的数据;

2)  非结构化数据:这类数据指各种文档: pdf, word, gif等。Oracle中使用大对象字段类型(LOB)来存储该类数据,但LOB存在效率问题,所以在11g中,使用Securefile来存储这类非结构化数据。(Securefile提供压缩、加密等功能,并且提高效率)

3)  以文档/内容为中心的数据(document-centric/content-centric):这类数据的代表是XML文档。Oracle提供了XML数据库来管理这类文档。(我对OracleXML数据库研究不深,所以不深入说明了)

 

fj.png1.JPG

fj.png2.JPG

fj.png3.JPG

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/13353915/viewspace-614576/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/13353915/viewspace-614576/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Day Management AG, Switzerland 11-May-2005 Release note Product: Specification for Content Repository for Java(tm) Technology API 1.0 Version: 1.0 Type: Full Release ====================================================================== 0. Index ---------------------------------------------------------------------- 1. Introduction 2. Release Contents 3. Copyright Notice 1. Introduction ---------------------------------------------------------------------- This Package contains the Specification for the Content Repository for Java(tm) Technology API. For questions or comments feel free to use jsr-170-comments@jcp.org Further information about JSR 170 can be found at http://www.jcp.org/en/jsr/detail?id=170 The Reference Implementation (RI) and the Technology Compatibility Kit (TCK) and the Specification Changelog may be downloaded from http://www.day.com/content/en/product/jsr_170.html 2. Release Contents ---------------------------------------------------------------------- All paths listed are relative to the installation directory of the ZIP file. This package consists of the following components: /docs generated Javadoc /lib pre-built API .jar-file /license Applicable License /spec Specification documents /src API Source code 3. Copyright notice ---------------------------------------------------------------------- Copyright ? 1993-2005 Day Management AG, Switzerland. All rights reserved. DAY, the DAY logo, Communiqu? ContentBus and CRX Content Repository Extreme are registered trademarks and service marks, or are trademarks and service marks, of Day Management AG, in various countries around the world. All other product names and company logos mentioned in the information, documents or other items provided or available herein may be the trademarks of their respective owners.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值