OFBIZ2.0精简版本应用概论

来源:百度文库 编辑:神马文学网 时间:2024/04/25 17:41:31
http://www.rdxx.com 02年03月28日 11:18 互联网
OFBIZ2.0精简版本应用概论
OFBIZ2研究 ——中科学院软件所 互联网软件技术实验室软件工程组
雷辉 (leihui@intec.iscas.ac.cn)  [2003-4-28]
1 使用OFBIZ的理由
1.1 什么是OFBIZ
OFBIZ是由Sourceforge维护的一个最著名的开源项目之一,提供创建基于最新J2EE/XML规范和技术标准,构建大型企业级、跨平台、跨数据库、跨应用服务器的多层、分布式电子商务类WEB应用系统的框架。
OFBIZ的Web应用框架以MVC模式搭建而成,整体采用了很多被大多数企业级应用系统公认的位于业务逻辑层和集成层(Business Tier and Integration Tier)的设计模式。许多表示层(Presentation Tier)的设计模式也被引入进OFBIZ,但是仅仅体现在Servlet控制器(the servlet controller)中,没有包括在实体引擎中。在实体引擎中使用的设计模式包括:业务代表(Business Delegate),值对象(Value Object), 符合实体(Composite Entity(variation)),值对象组装器(Value Object Assembler),服务定位器(Service Locator)和数据访问对象(DataAccess Object)。OFBIZ正在计划逐步引入其它设计模式和完善已经引入的设计模式的实现。
使用OFBIZ的框架和组件,可以大大缩短开发企业级WEB应用系统的进度和成本。了解详细情况请参见:http://sourceforge.net/project/ofbiz。
1.2 OFBIZ和其它项目的比较
与ofbiz类似的项目还有很多,ofbiz与这些项目的最主要的不同点是ofbiz提供了一整套的开发基于Java的web应用程序的组件和工具。一个优秀的web应用程序应该是至少三层结构:表示层,业务逻辑层和数据层。大多数应用框架,比如Struts, Cocoon, 和 Velocity 将主要精力都集中在了表示层。比如Struts,遵循了(MVC)构架,使用Java Bean和Action类与JSP页面进行通讯。Struts是一个很好的web应用框架,但它并没有提供访问数据库的组件,也没有提供控制工作流的组件。如果要使用,你必须自己创建这些组件。如果已经在利用其它的应用框架(如Struts),你也可以很容易的将ofbiz的组件添加到自己的工程中。
与其它类似开源项目相比,OFBIZ是一套有血有肉的包含编译打包部署工具、应用组件、示例应用等内容的企业级Web应用系统实现框架。
1.3 开源的优势
OFBIZ是一个开源项目,由几个牛人在维护,它具有开源项目的一切优势,如免费(随时下载);集市式开发方式;成千上万的人在维护,也在测试等等。也具备开源项目的所有缺点,如缺乏技术文档,提交的系统没有全面测试;不稳定等等,但无论如何,我们要清醒的认识到:
1、 OFBIZ是一个开源项目。
2、 OFBIZ只仅限于系统开发者使用。
1.4 完善的实体引擎
OFBIZ 实体引擎提供了一组工具和设计模式来对现实世界中特定的实体(数据对象)进行建模和管理。在本系统的上下文环境中,一个实体就是一个由多个数据域(fields)和该实体与其它实体之间的关系所组成的一个数据对象。这个定义来自于关系型数据库对实体关系模型(Entity-Relation modeling)概念的标准定义。实体引擎的目标是简化企业级应用中对实体数据(对应关系型数据库表)的大量操作,包括定义、维护、通用操作(增、删、改、查实体和实体之间的关系)的开发工作
实体引擎采用了很多被大多数企业级应用系统公认的位于业务逻辑层和集成层(Business Tier and Integration Tier)的设计模式。许多表示层(Presentation Tier)的设计模式也被引入进OFBIZ,但是仅仅体现在Servlet控制器(the servlet controller)中,没有包括在实体引擎中。在实体引擎中使用的设计模式包括:业务代表(Business Delegate),值对象(Value Object), 符合实体(Composite Entity(variation)),值对象组装器(Value Object Assembler),服务定位器(Service Locator)和数据访问对象(Data Access Object)。OFBIZ正在计划逐步引入其它设计模式和完善已经引入的设计模式的实现。