`
maqujun
  • 浏览: 135457 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Apache项目Research之Graffito

阅读更多

Apache Graffito是一个用于建立一个基于应用程序目录的开源的框架。它提供的功能包括版本控制,协作编辑,发布工作流,序列,查询等等。并且支持多种文档类型如:XMLHTMLPDF MS OFFICEOPEN Office, RDF等等。它是对于JCR API的一种扩展,或者说是加强了” business logic”,使得访问JCR Node和该Nodeproperty更加附和真正的商业对象(POJO)的需要。这里我要介绍的是它提供的一个独立的JCR Object/Content 映射框架。

让我们看一下他的一个实现方式吧:
他的
O/C Mapping有两种实现方式,一种就是使用Xml描述文件,另一种就是使用Annotation。使用Annotaion这里就不多说了。这里具体看一下多版本的“一对多”的Xml下的实现方式。

xml 代码
  1. <class-descriptor className="com.impl.MappingObject1" jcrMixinTypes="mix:versionable">
  2. <!---->
  3. <collection-descriptor fieldName="list" jcrName="list" elementClassName="com.impl.MappingObject2"/>
  4. <!---->class-descriptor>
  5. <class-descriptor className="com.impl.MappingObject2">
  6. <!---->
  7. <!---->class-descriptor>

就这样的简单的描述文件的配置我们就可以实现,对象到内容的映射关系了。全部的映射对象都会以节点的形式被存入JCR 库中,而List内的MappingObject2对象会以MappingObject1的子节点的方式存入。当查询时我们也可以直接通过Query来找到相关条件的MappingObject2

<o:p> </o:p>虽然该项目目前还没有Release版本,但基础Mapping关系已经完成,可以通过SVN来获得源码,自行打包即可。至少我已经把它JCR O/C mapping的功能用在了实际项目中了。

分享到:
评论

相关推荐

    Graffito

    在商业项目中使用Graffito字体,必须确保拥有适当的授权。许多字体设计师或公司会提供商业许可,购买后方可合法使用。未获得授权而擅自使用可能会引发法律纠纷。 6. **搭配与组合**: 为了平衡Graffito的强烈视觉...

    Graffito_exe_v1.3.6.zip

    Graffito_exe_v1.3.6.zipGraffito_exe_v1.3.6.zipGraffito_exe_v1.3.6.zipGraffito_exe_v1.3.6.zipGraffito_exe_v1.3.6.zip

    JCMS内容管理系统

    Graffito是一个开源的内容管理系统(CMS),它由Apache Software Foundation开发和支持。该系统旨在提供一套完整的解决方案,用于管理和发布各种类型的内容,包括但不限于文本、图像和多媒体文件。Graffito的设计目标...

    【WordPress插件】2022年最新版完整功能demo+插件1.3.6.zip

    "【WordPress插件】2022年...泰森云每天更新发布最新WordPress主题、HTML主题、WordPress插件、shopify主题、opencart主题、PHP项目源码、安卓项目源码、ios项目源码,更有超10000个资源可供选择,如有需要请站内联系。

    BEC商务英语Module资料PPT教学课件.pptx

    - **Graffiti**:涂鸦,一种在公共或私人空间上进行的非授权艺术表现形式,可以是单个作品(graffito)或一组作品(graffiti)。 - **Vandal**:故意破坏公共财产的人,与涂鸦文化中的破坏行为有关。 - **...

Global site tag (gtag.js) - Google Analytics