`

OFBIz

阅读更多

From: http://wenku.baidu.com/view/603672160b4e767f5acfce79.html###

 

基于Ofbiz的Web框架 

录 
 

Web开发概述 .......................................................................................................................... 2 1.1 MVC设计模式 ......................................................................................................... 2 1.2 Struts的MVC实现 ................................................................................................. 2 1.3 Struts的优势 ............................................................................................................ 4 1.4 Struts的不足 ............................................................................................................ 4 

Ofbiz的业务框架..................................................................................................................... 5 2.1 
Ofbiz概貌 ................................................................................................................. 5 2.1.1 什么是Ofbiz ..................................................................................................... 5 2.1.2 Ofbiz  vs.  Struts ............................................................................................ 5 2.1.3 Ofbiz的好处 ..................................................................................................... 5 
2.2 
Ofbiz的MVC 模式实现 ......................................................................................... 6 2.2.1 数据层的控制器 (Entity Engine) .................................................................... 6 2.2.2 逻辑层的控制器 (Service Engine) .................................................................. 7 2.2.3 
Web层控制器 (Control Servlet, JPublish, etc) ............................................... 7 
2.3 Web请求执行流程................................................................................................. 11 
 

 

 


基于Ofbiz的Web框架 
2013-4-15 17:40:00 
 
第 2 页 共 11 页 
1 Web开发概述 
随着互联网的广泛普及,越来越多的企业应用采用了B/S的交互模式。在开发基于B/S的企业应用中,如何把表示逻辑与业务逻辑分离开来,一直都是人们关注的一个焦点问题。 在Web开发中引入MVC设计模式,是一个有效地解决办法,目前看来是一个成功的办法,也是人们仍然在做的事。MVC设计模式起源于Smalltalk语言,它由以下三个部分组成:模型(model),视图(view),控制器(Controller)。 
1.1 MVC设计模式 
组件 
描述 
模型(model) 封装数据对象。模型用来封装和显示数据对象。 
视图(view) 作为模型的显示,它表示数据对象的当前状态。 
控制器(Controller) 定义对用户的输入执行相应操作的接口,它用来操作模型(model)和数据对象。 
使用MVC的好处如下: 
可靠性:表示层和业务层分离,这样就允许你更改你的表示层代码而不用重新编译你的模型(model)和控制器(Controller)代码。 
高重用和适应性: MVC模式允许你使用各种不同样式的视图来访问同一个服务器端的代码。它包括任何WEB(HTTP)浏览器或则无线浏览器(WAP)。 
快速的部署:开发时间会得到相当大的缩减,它使程序员(java开发人员)集中精力于业务逻辑,界面程序员(HTML和JSP开发人员)集中精力于表现形式上。  
可维护性: 分离表示层和业务逻辑层也使得基于MVC实现的Web应用更易于维护和修改。 
1.2 Struts的MVC实现 
Struts 的体系结构实现了Model-View-Controller设计模式的概念,它将这些概念映射到web应用程序的组件和概念中。 

 

 


基于Ofbiz的Web框架 
2013-4-15 17:40:00  第 3 页 共 11 页 
 
 
 
 
 
 
 
 
图1 Struts的MVC实现图 
下面是处理步骤的描述 : 
1. 由显示视图产生一个请求。 
2.  请求被ActionServlet(控制器)接收,它在struts-config.xml文件中寻找请求的URI,找到对应的Action类后,Action类执行相应的业务逻辑。 
3.  Action类执行建立在模型组件基础上的业务逻辑,模型组件是和应用程序关联的。 
4.  一旦Action类处理完业务逻辑,它把控制权返回给ActionServlet。,Action类提供一个键值作为返回的一部分,它指明了处理的结果。ActionServlet使用这个键值来决定在什么视图中显示Action的类处理结果。 
5.  当ActionServlet把Action类的处理结果传送到指定的视图中,请求的过程也就完成了。 
 模型(The Model) 
Struts框架没有提供特定的模型组件。  
 视图(The View) 

 

 


基于Ofbiz的Web框架 
2013-4-15 17:40:00  第 4 页 共 11 页 
Struts框架中视图组件对应于一个简单的JSP文件,这个JSP文件包含了Struts定义的标签 。这些标签在Struts框架中定义,它使struts应用项目和控制器之间实现松耦合。  
 控制器(The Controller) 
控制器是Struts框架中的中枢,它由org.apache.struts.action.ActionServlet这个servlet来贯彻和执行的。这个org.apache.struts.action.ActionServlet接收所有客户端的请求,并把请求委派到指定的Action类(用户扩展自org.apache.struts.action)。ActionServlet委派请求是基于客户端传入的URI。 一旦Action类完成处理,ActionServlet根据Action返回的键值来决定在什么视图中显示Action的类处理结果。 
1.3 Struts的优势 
由于Struts出现的历史比较早,目前,Struts是最流行的Web开发框架,得到了最多开发人员和供应商的支持,是MVC应用的主流。 
他的优势很多,如开源、用户群众多、文档丰富、支持好、稳定、轻量级等等,在此不再详述,因为缺少合适的比较对象。 
1.4 Struts的不足 
然而,需要指出的是,Struts并不是唯一实现MVC模式的Web框架。尽管你可能已经习惯了Struts,感觉它很好、足够用,但是,仔细想一想,再看一看别的Web框架,也许不难找出Struts的一些不足之处,这里主要从宏观的角度谈谈。 
1. 没有提供特定的模型组件。这是最明显的缺点,模型要自己去实现、封装,用最
基本的java Bean可以想象当应用规模比较大时,设计和编码的工作量有多大。当然,从某种意义上也可以说是个优点,因为你可以自由选用自己的模型实现如EJB和其他OR Mapping。 2. Struts只是一个技术框架,也可以说仅仅是一个工具,因为它没有包含任何业务
内容。是的,Struts不是一个业务框架,即使是一个登陆验证这样的基本服务你也需要从零开始编码。 3. 难以胜任复杂的大规模级企业应用。实际上,在企业级应用中,Web层只是很薄
的一层,并不是分出简单的MVC就可以了。一个单纯的技术框架是没有多少实用价值的。用Struts做简单的Web应用可以,对于复杂规模级应用,太多的东西要编码,Struts显得过于单薄。 

 

 


基于Ofbiz的Web框架 
2013-4-15 17:40:00 
 
第 5 页 共 11 页 
2 Ofbiz的业务框架 
2.1 Ofbiz概貌 
2.1.1 什么是Ofbiz 
Ofbiz(Open for business)是一个开源的,基于J2EE和XML规范的,用于构建大型企业级、跨平台、跨数据库、跨应用服务器的多层、分布式电子商务类WEB应用系统的框架(Framework)。 Ofbiz几乎实现了所有的J2EE核心设计模式,各个模块之间的耦合比较松散,用户能够比较容易的根据自己的需要进行拆卸。 
Ofbiz内置了许多其它开源项目,如JBoss,PostgreSQL,MySQL,Apache,Jetty,JOTM,Jpublish,BeanShell,Ant,BSF,Log4J,等,提供了相对成本比较低的解决方案。同时,用户也可以比容易的更换成其他组件,如将Jboss&&Tomcat换成Bea Weblogic或者IBM Websphere。 
2.1.2 Ofbiz  vs.  Struts  
严格说来,Ofbiz与Struts没有可比性。Ofbiz做了很多人想做却一直没有做好的事,那就是把市面上的知名的开源项目整合起来,形成一个更有价值的业务框架。 
Ofbiz包括了几乎所有的软件界的主流技术,所有能被利用的开源项目都被纳入其中。但是,令人吃惊的是,Ofbiz却没有把广为应用的Struts包括进去,相反的采用了JPublish + FreeMaker + BeanShell这三个开源的东西来代替Struts。而要把Struts加进去取代这三者似乎不是一件容易的事。 
Ofbiz的总设计师David E. Jones,没有对Struts发表太多的见解,对此有一个简单的解释是:Struts与Ofbiz的设计差别太大,没有办法无逢集成。以其能力写一个MVC框架不是问题。 
如果真要比较的话,那就是技术框架与业务框架的区别。Ofbiz提供了一整套的开发基于Java的web应用程序的组件和工具;而Struts并没有提供访问数据库的组件,也没有提供控制工作流的组件。实际上,Struts是一个框架工具,Ofbiz远不止于此,它还包含了部分业务功能及其基础设施。 
2.1.3 Ofbiz的好处 
 缩短开发周期,降低成本 
据称,很多基于J2EE的失败实践,都可以归结于拙劣的设计。J2EE规范并不复杂,但是如何遵照J2EE规范,根据自己的业务需求,做一个合适的、高效的、可扩展的设计,是需要实际经验和智慧的。国外的大中型系统基于J2EE的早就很多了,国内近几年也多了起来,但是优秀的设计人员不是很多。 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


 

分享到:
评论

相关推荐

    ofbiz学习笔记(自学整理)

    Apache Ofbiz是一个开源的企业应用框架,它为构建复杂的业务应用程序提供了全面的功能,包括供应链管理、电子商务、财务会计、人力资源等。对于初学者来说,理解Ofbiz的基本架构和工作原理是至关重要的。 Ofbiz的...

    Ofbiz 数据库全模型

    Ofbiz,全称为The Open For Business Project,是一个开源的企业应用框架,主要由Apache软件基金会维护。这个项目旨在提供一套全面的、可扩展的企业级应用程序解决方案,涵盖了电子商务、供应链管理、客户关系管理等...

    OFBIZ快速入门OFBIZ快速入门

    【OFBIZ快速入门】 OFBiz,全称Open For Business Project,是一个开源的企业级应用框架,专注于电子商务和业务流程管理。OFBiz旨在提供一个全面、可扩展且灵活的解决方案,适用于各种规模的企业。本篇文章将带你...

    Apache OFBiz Development The Beginner's Tutorial

    ### Apache OFBiz 开发入门教程知识点汇总 #### Apache OFBiz 概述 - **社区驱动的开源项目**:Apache OFBiz 是一个完全免费且由社区维护的开源项目。 - **功能强大**:作为最佳电子商务与企业资源规划(ERP)软件...

    ofbiz权限(全)

    ### OFBiz权限系统详解 #### 一、设计思想简述 在OFBiz权限管理系统中,采用了“安全组”(SecurityGroup)的概念来关联“权限”与“用户”。系统中的权限种类繁多,包括但不限于系统预设权限、用户自定义权限、...

    Apache.OFBiz.Development

    根据给定的文件信息,以下是关于Apache OFBiz开发的知识点: 1. OFBiz介绍与安装:OFBiz是一个开源的企业自动化软件套件,它提供了构建企业应用程序所需的各种功能,比如电子商务、订单处理等。文件中提到了2008年...

    ofbiz开发者入门教程

    在本教程中,我们将深入探讨如何入门Apache Ofbiz的开发,这是一个开源的企业级应用框架,专为电子商务、供应链管理和企业资源规划等业务流程设计。Ofbiz提供了强大的组件化架构,使得开发者可以方便地构建和扩展...

    关于OFBIZ的资料

    在提供的OFBIZ_Demo压缩包中,用户可以找到OfBiz的演示版本,这是一套预配置的环境,展示了OfBiz在实际业务场景下的功能和操作。这个演示通常包括以下部分: 1. **安装与配置**:压缩包可能包含了安装指南和配置...

    ofbiz10.04表结构

    标题中的"ofbiz10.04表结构"指的是OFBiz 10.04版本的数据模型设计,这是企业级开源应用框架OFBiz的一个重要组成部分。OFBiz全称为Open For Business Project,它是一个用于构建企业应用程序的全面业务解决方案,涵盖...

    ofbiz数据结构设计

    《OFBiz数据结构设计详解》 OFBiz,全称为Open For Business Project,是一个开源的企业级应用框架,主要用于构建和管理电子商务、供应链管理、客户关系管理等业务系统。OFBiz的数据结构设计是其核心组成部分,它...

    ofbiz api开发文档

    《OFBiz API 开发文档详解》 在信息技术领域,OFBiz(Open For Business Project)是一个开源的企业级应用框架,主要用于构建复杂的电子商务系统。OFBiz 提供了一整套全面的业务组件,涵盖了从供应链管理到客户关系...

    OFBIZ开发指南 英文2

    《OFBIZ开发指南》是一本专为开发者设计的详细教程,主要针对OFBIZ(Open For Business Project)这一开源企业应用平台。OFBIZ是一个基于Java的企业级应用框架,旨在提供一系列完整的业务功能,包括供应链管理、电子...

    ofbiz git 服务搭建

    【OFBiz Git 服务搭建详解】 OFBiz是一个开源的企业级应用框架,主要用于构建和管理电子商务系统。本教程将详细介绍如何在本地环境中搭建OFBiz项目,并使用Git进行版本控制。 首先,确保你拥有以下基础环境: 1. ...

    原创 Ofbiz 入门教程

    ### Ofbiz 入门教程详解 #### 一、Ofbiz 概述 Ofbiz(Open for Business)是一款开源的企业级商务应用系统,它利用了一系列优秀的开源项目如Tomcat、Ant、BeanShell、Jboss等,构建出了一个强大的系统平台。Ofbiz...

    ofbiz中文技术文档

    **Ofbiz与Opentaps简介** Ofbiz(Open for Business Project)是一个开源的企业级应用框架,主要用于构建电子商务、供应链管理、客户关系管理等业务系统。它由Apache软件基金会维护,提供了一个灵活且可扩展的平台...

    ofbiz综合使用手册

    【ofbiz综合使用手册】是针对初学者的指导材料,主要介绍了如何配置和使用ofbiz这一企业级开源应用框架。ofbiz遵循了Model-View-Controller(MVC)设计模式,这种模式对于大型商业逻辑项目的开发尤其有益,因为它...

    Apache OFBiz Cookbook

    ### Apache OFBiz Cookbook 知识点解析 #### 一、Apache OFBiz 概述 - **定义**:Apache OFBiz(Open For Business)是一款开源的企业级应用框架,它集成了ERP(企业资源规划)、CRM(客户关系管理)以及E-...

    Ofbiz快速开发入门详解

    《Ofbiz快速开发入门详解》是一本针对初学者的指南,旨在帮助读者迅速掌握Ofbiz框架的基本使用和开发技巧。Ofbiz,全称Open For Business Project,是一个开源的企业级应用框架,主要用于构建复杂的业务应用程序。它...

    朗华opencms ofbiz 结合包

    【朗华OpenCMS与OFBiz结合包详解】 OpenCMS与OFBiz是两个在企业级应用中广泛使用的开源软件。OpenCMS是一款强大的内容管理系统,而OFBiz则是一个全面的企业业务自动化框架。将两者结合,可以为企业提供一个集内容...

Global site tag (gtag.js) - Google Analytics