OFBIZ2.0精简版本应用概论-4

来源:百度文库 编辑:神马文学网 时间:2024/03/29 06:48:13
OFBIZ2.0精简版本应用概论
http://www.rdxx.com 02年03月28日 11:18 互联网
服务引擎可以用处理跨平台、跨操作系统、跨应用系统之间的业务逻辑。把实体引擎和服务引擎结合起来,可以这解决企业级Web应用系统的绝大部分需求所涉及到的技术实现细节。
1.7 其它甜饼
OFBIZ的野心太大,几乎想通吃所有最新的关于企业级、多层、分布式应用系统的构建技术。除最成熟的实体引擎和服务引擎之外,它还涉及到以下系统实现引擎。
1、 工作流引擎
2、 规则引擎
3、 消息引擎
这三项工作,除工作流引擎尚为alpha版本之外,其它两个都在建设之中,看来,已经把这几个人累的够呛。
1.8 主流技术的采用和跟踪
OFBIZ的框架中引入了最先进的主流开发技术Web应用系统构建技术,如:Xerces (xml.apache.org) ;Xalan (xml.apache.org) ;Axis (xml.apache.org) ;Log4J (jakarta.apache.org) ;Castor (www.exolab.org) ;ORO (jakarta.apache.org) ;BeanShell (beanshell.org) ;J2EE1.3,XML1.2等,而且整个系统,在原来的基础上不断的被重构和修订。
1.9 扩展性和可移植性
OFBIZ所提供的系统框架,是一个纯Java的应用程序,在具体实现中采用了大良的设计模式,本身系统的实现完全符合面向对象的设计原则中的几乎所有要求,除采用J2EE核心设计模式、数据库设计模式之外,OFBIZ的实现代码中,大量引入和Java设计模式,其应用系统本身的扩展性和可移植性已经没有问题。
OFBIZ开发者同时维护和Weblogic,Tomcat,Jboss,Resin,orion等16个厂商的Web和App应用服务器的兼容版本.
OFBIZ开发者同时维护和oracle,Mysql,Sybase,PostgreSQL,Hsql等数据库产品的兼容支持,包括编译、打包、部署到这些数据库产品或应用服务器产品的运行环境下。
OFBIZ开发者同时在Unix和Windiws两大操作系统上进行开发和测试,而且具备Java应用系统的所有跨平台的特点。
有了这些,对于大型企业级应用系统的具体、特定实现来说,你有信心实现所谓的“一次开发,到处运行”。
1.10 改进的事务处理功能
目前OFBIZ提供4种数据库连接方式的支持(在“EntityEngine.xml”文件中配置,被“EntityConfigUtil”类装载进内存)。
用在:
GenericDelegator ——> GenericHelper.
GenericHelper ——>GenericHelperDAO
GenericHelperDAO ——>GenericDAO
GenericDAO ——> SQLProcessor
SQLProcessor ——> ConnectionFactory类的get Collection()方法得到数据库连接。然后构造PrepareStatement来实施数据库操作。
OFBIZ2.0改进了GenericDAO和SQLProcessor,综合利用JDBC的事务管理和应用服务器的事务管理功能实现多层分步式事务管理功能,因为不同的实体操作可以对应不同的实体引擎(在EntityEngine.xml中通过实体所在的组了配置),这样可以在OFBIZ的主运行环境下,通过实体引擎的配置实现对远程数据源的访问操作,而一旦连接上远程数据源,OFBIZ就提供一套机制,把针对本地和远程数据源的操作纳入到同一事务管理范围内,实现分布式事务处理。
OFBIZ利用JDBC提供的数据库操作事务管理API(commit,rollback等)和第三方工具所实现的数据库操作事务管理API,实现了OFBIZ的实体引擎对事务的控制。
2 不使用OFBIZ的理由
2.1 系统过于庞杂
确实如此!!它用到了XXX,XXX,XXX标准,体现着XXX,XXX,XXX技术,维护着诸多的概念、理念、包含着这么多的设计模式,光配置文件就有30个之多,涉及到的配置项不下200种,它要用到很多工具,这一个理由足以让大多数人望而却步!
OFBIZ太复杂,把基础、公用的东西和特殊应用混到一块,特别在实体定义的时候(考虑关联关系)。
2.2 夸夫追日
如果把OFBIZ比做太阳的话,使用OFBIZ的人就是夸父,因为一旦你采用了OFBIZ ,它就会诱惑你,永远跟踪下去,和其保持同步,和它保持同步的同时,意味着你必须不端的充电,和XXX,XXX,XXX规范保持一致;和XXX,XXX,XXX标准保持一致;和XXX,XXX,XXX工具保持一致,这样你会很累,那有我用JDK写的东西维护起来的轻松?9 73123 45674 8: