最新发布《数智时代的AI人才粮仓模型解读白皮书(2024版)》,立即领取! 了解详情
写点什么

Java 内容仓库 2.0:公众评测版

  • 2007-07-19
  • 本文字数:1704 字

    阅读完需:约 6 分钟

现在正是 Java 内容仓库(Java Content Repositories)的繁荣期。第二版 JCR API 已经发布了公众评估版( JSR-283 ),与此同时,第一版( JSR-170 )进展良好: Jackrabbit 现在是顶级 Apache 项目,正准备收编对象内容映射工具,开始超越单纯的内容管理系统转而在其它开发成果中充当相应的角色,比如 JBoss Rules’ BRMS 中的业务规则持久化库,以及 artifactory ,它是一个 Maven 2 仓库。

JSR-283 旨在从以下几个方面改进 JCR 1.0:

  • 访问控制和节点类型的管理
  • 通过新的标准节点类型(包括元信息和国际化)改进互操作性
  • 扩展内容建模能力
  • 联邦、交叉仓库和交叉工作区(Workspace)功能
  • 积极发展现有查询语言、版本标定和观察
  • Remoting 和客户 / 服务器协议映射(译者注:Remoting 是采用分布式进行编程的一种技术,主要用于管理跨应用程序域的同步和异步 RPC 会话。默认情况下,Remoting 使用 HTTP 或 TCP 协议,并使用 XML 编码的 SOAP 或本机二进制消息格式进行通信。)

InfoQ 有机会就 Java 内容仓库和 API 第二版的公众评测版等问题,对 David Nuescheler 进行了采访,他是 Day Software 的首席技术执行官和 JSR283 及 JSR170 规范的领导者。关于实现者采纳 JCR 的话题:

用户对 API 两边的采纳程度都已经超出了我的期望。在内容仓库实现这一边,可能有二十多个实现。

我发现,尤其值得一提的是,我们已经有了 4 个独立的开源 JCR 实现,在如此短的时间内达到这样结果,这对 v1.0 标准来说是最好的成绩。我不记得其它任何 JSR 曾这么快被采用。

关于被开发者采纳的话题:

更重要的是在 API 的另一边,应用一边,我们已经看到有大量的使用 JCR 的项目和产品。我们试图在(jackrabbit wiki)[ http://wiki.apache.org/jackrabbit/JcrLinks ] 上维护一个列表,虽然这只是冰山一角,但是却很难做到。 在这方面,JCR 的确超出了其它内容仓库技术。我认为大量的独立应用开发者已经丧失了对任何私有的内容仓库 API 的兴趣。

当被问及什么样的应用适合使用 Java 内容仓库时,尤其与使用传统数据库对比:

那种认为内容仓库仅限于使用于任何形式或形态(DM, DAM, WCM, SCM)的“内容管理系统” 的论断,我称之为公众误解。我认为 JCR 不仅对基于 Web 的 CMS 来说是一个理想的存储层,而且对其它许多应用来说也是理想的存储层,理解这一点很重要。

我认为内容仓库是几乎所有现代应用理想的存储场所,这些应用意欲使用版本标定、细粒度访问控制、全文检索、大二进制和所有内容仓库所暴露的其它服务。

在我的应用中,与 JDBC 接口相比,我个人总是更喜欢丰富的 JCR 接口,但这主要是因为使用 JCR 让我很舒服。

对那些以前没有使用 JCR 经历的人,我推荐他们采用现成的应用(我是这么称呼的)。该应用将成为利用内容仓库的额外服务如版本标定、访问控制或层级结构的应用。

谈及 JCR2.0 的总体话题:

对于 JSR-283,我们确实与大的 ECM 厂商一起付出了很多努力,以接近通常已使用的 ECM 实践,因此使得厂商更容易与该规范兼容。

David 还罗列了其个人的 JCR2.0 十大特征:

  1. 查询扩展主要围绕对 SQL,尤其是 JOIN 的扩展支持;我们还为查询对象模型引入了 Java 绑定,这让“查询向导”以及“Prepared”查询(它虽是最后提及,但也很重要)更加容易。
  2. 访问控制管理,已经超越 JCR v1.0 指定的自省(introspection)。
  3. 保管策略 & 持有支持(Retention Policy & Hold Support),使记录管理应用能在 JCR 仓库之上以标准的方式进行设置。
  4. 对只支持线性版本标定的仓库,提供简单版本支持。版本标定的扩展围绕“基线”和“活动”展开,以全面覆盖整个配置管理。
  5. 生命周期管理,允许容易地装配内容到一个过程引擎。
  6. 标准节点注册,允许应用使用仓库去注册和管理它们的节点类型。
  7. 新属性类型和新节点类型,增强应用围绕公共元数据的互操作性。
  8. 工作区管理,允许创建和删除仓库中的工作区。
  9. 可共享节点,允许内容仓库工作区中的树型结构变成更含蓄的网络结构。
  10. 定期观察,允许离线 / 轮询应用,以发现自上次检查之后内容仓库发生了什么。

想了解更多信息,你可以阅读 JSR-283 公众评测版、David 的幸福内容建模的简单规则以及关注InfoQ 的有关 Java 内容仓库的内容。

查看英文原文: Java Content Repository 2.0: Public Review

2007-07-19 00:562811
用户头像

发布了 150 篇内容, 共 43.4 次阅读, 收获喜欢 9 次。

关注

评论

发布
暂无评论
发现更多内容

畅捷通的 Serverless 探索实践之路

阿里巴巴云原生

阿里云 Serverless 云原生

Python笔记三之闭包与装饰器

Hunter熊

Python 装饰器 闭包 装饰器类 装饰器参数

QCN9274, QCN9024-QCA9880 three different chips - how are they connected?

wifi6-yiyi

QCN9024 qcn9274

京东方董事长署名文章:新元肇启:敬征程,致未来!

科技热闻

2024-拒绝瞎忙,专注一件事

玄兴梦影

总结 质量 专注

英特尔锐炫显卡暴风成长:游戏领域大放光彩,AI应用表现抢眼

E科讯

软件开发者必读!2024年30大趋势提前曝光!

SoFlu软件机器人

基于开源模型搭建实时人脸识别系统(六):人脸识别(人脸特征提取)

EquatorCoco

开源 刷脸支付 人脸

TDengine 2023 年成绩单“曝光”,六大维度彰显卓越成就

TDengine

tdengine 时序数据库

深入理解技术内容运营

小万哥

程序人生 软件工程 后端开发 技术写作 内容运营

软件开发

Geek_8da502

2023:突破迷雾,追寻不惑之旅

BY林子

【并发编程】CountDownLatch详解与原理

小明Java问道之路

并发编程 AQS 后端 多线程 CountDownLatch

InterSystems 数据库的存储过程存在哪里

HoneyMoose

携手开发者探索AI PC无限可能,英特尔人工智能创新应用大赛启动

E科讯

记一次JSF异步调用引起的接口可用率降低 | 京东云技术团队

京东科技开发者

喜讯!MIAOYUN正式获封“专精特新”中小企业称号!

MIAOYUN

四川省创新型中小企业 专精特新 MIAOYUN 专精特新中小企业 成都高新梯度培育企业

大模型和深度学习的工作总结

6个核桃

作为铭文跨链赛道龙头,SoBit 有何突出之处?

长安区块链

2023 年总结与技术心得

Geek_231712

元数据中心的数据有哪些分类?

如水

元数据

作为铭文跨链赛道龙头,SoBit 有何突出之处?

大瞿科技

聚道云软件连接器助力企业微信与U9无缝对接,审批通知考勤一网打尽

聚道云软件连接器

案例分享

一款降压型开关模式转换器解决方案

二哈侠

基于深度学习的探地雷达图像去杂波

小酌江风雪

仪表盘、数据分析新增分享功能及应用服务下新增服务实例菜单

博睿数据

AfterShip 举办首届 Hack-day 论坛,用技术助力业务增长,赋能研发提效

科技热闻

TDengine 技术培训班开课,来听“地震烈度速报与预警工程”成功案例

TDengine

tdengine 时序数据库

技术人的 2023 用QCon大会画上完美句号

IT蜗壳-Tango

Qcon

重磅发布|博睿数据2023年度精选案例集—— IT运维之光

博睿数据

可观测性

钉钉集成金蝶云星辰丨聚道云助力企业实现财务流程自动化

聚道云软件连接器

案例分享

Java内容仓库2.0:公众评测版_Java_Geoffrey Wiseman_InfoQ精选文章