1、OFBiz简单介绍,什么是OFBiz

          OFBiz is an Apache Software Foundation top level project.

          Apache  OFBiz全称是The ApacheOpen For Business
Project。

是开放的电子商务平台。是一个很著名的开源项目,提供了创建基于最新的J2EE/XML规范和技术标准。构建大中型企业级、快平台、跨数据库、跨应用server的多层、分布式电子商务类WEB应用系统的框架。

          OFBiz差点儿实现了全部的J2EE核心设计模式,各个模块之间的耦合比較松散,用户能够比較easy的依据自己的须要进行拆卸。很灵活。以下介绍一下它的文件夹结构以及文件说明。

2、文件夹结构

整个项目文件夹结构

    applications:`各个应用的文件夹,包括了OFBiz核心的应用程序组件,如订单管理。电子商务存储等。

    framework:框架文件夹,包括OFBiz框架的组件,比如实体引擎和服务引擎。这是OFBiz框架的核心。其它应用程序都是基于它来构建的。

  hot-deploy:热部署文件夹

 specialpurpose:专门文件夹,包括一些其它的应用程序。不是OFBiz的核心部分。

  themes:主题文件夹

  tools:工具文件夹

 

假设我们要写一个模块。那么建的文件夹例如以下,把此模块热部署到hot-deploy中就可以。

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbGl1dGVuZ3RlbmcxMzA=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />

 

Ofbiz-component.xml:每一个组件都有这样一个文件。他们用于定位该组件的entity,service,web配置文件以及jar包等。

build.xml是ant文件,用于測试和构建这个应用程序。

 

build文件夹是放本模块生成的jar包和已编译的Java代码。

config文件夹包括配置文件。比如国际化的UI标签的XML文件。

data文件夹包括种籽和演示数据。

 

entitydef文件夹包括实体配置的xml,即数据模型定义。

 

script脚本文件夹包括业务逻辑的脚本文件。

servicedef包括services服务,是细粒度的业务逻辑(DAO方法)。

 

src源文件文件夹,包括实现业务逻辑的Java类文件

 

webapp应用程序的前端。一个应用程序能有多个webapp应用程序。包括WEB-INF。JSP。Controller.xml,web.xml

web.xml事实上就和struts的xml配置一样的。用来放一些拦截器,监听器这些东西的。当中有个地方配置screen的地址。

这个地方注意一下。

(见上篇博文)

Controller.xml,从文件的命名来看。我们可能猜出它是对controller的定义。

更确切的说它是定义view,controller之间的映射关系,不仅包括了请求的映射关系。同一时候还包括了视图的映射关系,以及一系列的处理器不如视图解析处理器,事件处理器等。

 

         widget用来放web的Form,screen,ftl等页面。它能够将一个完整的html页面拆分为一个个小块的widget,终于的页面是通过widget组合而成。

        用widget的优点是能够不用写不论什么html和css代码就能够得到一个统一的完整的页面。展示业务数据也能够轻松的获取。缺点是,不像FreeMarker是一个纯页面技术,从request和session中得到业务数据。然后直接将其展示处理。Widget技术将业务数据获取和展示混在一起,后台开发者和页面设计人员不能分工合作。甚至仅仅有后台设计人员才干开发Ofbiz应用。

 

3、总结

         

       从OFBiz的文件夹结构上我们很easy理解每一个文件是做什么的。这些知识须要建立在我们已有的知识基础上,这些东西并非新东西。全部的技术的思想都是一致的。应该说都是为了解决某一类问题。

而OFBiz是封装了一套业务框架,MVC框架,ORMapping等。同一时候也封装了自己的页面技术。实现ERP/CRM复杂的业务系统很简单。

           ERP/CRM业务系统复杂多变。模块众多。什么样的框架能够满足这种系统呢:一是适应业务变化,第二适合高速开发,第三页面风格能够一致。OFBiz就是这种框架,entity加入降低一个字段,在OFBiz中仅仅须要在entitymodel中做改动,在输入页面,显示页面。改动页面都不用做不论什么的改动就能够看到变化,并且业务逻辑模块也不用改动就能够对变化的字段进行维护,很方便。

Apache OFBIZ高速上手(三)--文件夹&&配置文件介绍的更多相关文章

  1. Apache OFBIZ高速上手(二)--MVC框架

    继续上一篇博客,本篇博客介绍OFBiz的MVC框架. 1.OFBiz特点 OFBiz最基本的特点是OFBiz提供了一整套的开发基于Java的web应用程序的组件和工具.包含实体引擎.服务引擎.消息引擎 ...

  2. win7+Apache 设置域名指向本地文件夹

    实现:浏览器地址栏输入 www.bnzoo.com 访问 D:/www 系统:win7旗舰版+Apache 步骤: 1.打开文件 C:\Windows\System32\drivers\etc\hos ...

  3. apache环境下禁止某文件夹内运行PHP脚本、禁止访问文件或目录执行权限的设置方法

    apache环境下禁止某文件夹内运行PHP脚本.禁止访问文件或目录执行权限的设置方法   首先我们来看两段对上传目录设置无权限的列子,配置如下: <Directory "要去掉PHP执 ...

  4. 使用WWW获取本地文件夹的XML配置文件

    Unity3D读取本地文件可以使用Resources.Load来读取放在Resources文件夹下的文件,如果不是放在该文件夹下,则可以通过WWW类来读取. 譬如读取xml的配置文件. /// < ...

  5. Ubuntu根目录下各文件夹的功能详细介绍

    Ubuntu的根目录下存在着很多的文件夹,但你知道他们都存放着哪些文件呢?这些是深入了解Ubuntu系统必不缺少的知识,本文就关于此做一下介绍吧. /bin/    用以存储二进制可执行命令文件. / ...

  6. [JAVA IDEA]在使用maven项目中,无法读取resources文件夹中的配置文件的一种解决方案

    1.在通过配置文件来连接数据库时,在resouces文件中放入了db.properties配置文件,但无法正常读取到 读取配置文件信息的代码: InputStream input=JdbcUtil.c ...

  7. Apache Tomcat目录下各个文件夹的作用

    1.bin:存放各种不同平台开启与关闭Tomcat的脚本文件. 2.lib:存tomcat与web应用的Jar包. 3.conf:存放tomcat的配置文件. 4.webapps:web应用的发布目录 ...

  8. 宝塔 windows下apache环境下禁止某文件夹内运行PHP脚本、禁止访问文件

    首先我们来看两段对上传目录设置无权限的列子,配置如下: //在宝塔下如用/upload这个路径应用无效,一定要C:/wwwroot/upload才有效果 <Directory "要去掉 ...

  9. apache rewrite设置 禁止某个文件夹执行php文件

    RewriteRule (data|templates)/(.*).(php)$ – [F]

随机推荐

  1. LeetCode with Python -> String

    344. Reverse String Write a function that takes a string as input and returns the string reversed. E ...

  2. POJ--2823--Sliding Window----单调队列问题

    Sliding Window Time Limit:12000MS     Memory Limit:65536KB     64bit IO Format:%I64d & %I64u Des ...

  3. GitLab-CI环境搭建与操作手册

    第一章 系统安装简介 1.1. 系统结构 GitLab-CI持续集成服务主要包括gitlab.runner 2个模块.Gitlab主要负责代码文件的管理:runner则负责版本编译.存储.推送等任务. ...

  4. OtherStream

    import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.DataInputStream; import ...

  5. TTL 和 RS-232

    下面详细讲解下面这三种的区别 USB转TTL串口板(常用芯片PL2303,CH340) USB转RS-232串口线 TTL转RS-232串口板,RS-232转TTL串口板(常用芯片MAX3232,MA ...

  6. PHP网站提交表单如何实现验证码验证功能

    很多小伙伴在原生网站时候都会遇到很多意料之外的情况发生,也有不少小伙伴在初学程序代码的时候可能会因为一个小小的逗号隐藏在几百行,几千行的代码中出错常见的在提交表单中很多事需要验证码验证,那么如何来实现 ...

  7. codevs 1380/HDU 1520 树形dp

    1380 没有上司的舞会 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 钻石 Diamond 题解 查看运行结果 回到问题 题目描述 Description Ural大学有N个职员 ...

  8. UVA 11991 vector

    Though Rujia Liu usually sets hard problems for contests (for example, regional contests likeXi’an 2 ...

  9. 【一个比较bug free的二分写法】

    lower_bound: [l, r)区间内大于等于val的第一个位置 int lower_bound(int l, int r, int val){ while(l < r){ ); if(a ...

  10. iOS飘雪的动画小demo

    ViewController.h #import <UIKit/UIKit.h> @interface ViewController : UIViewController{ UIImage ...