Apache OFBIZ高速上手(三)--文件夹&&配置文件介绍
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高速上手(三)--文件夹&&配置文件介绍的更多相关文章
- Apache OFBIZ高速上手(二)--MVC框架
继续上一篇博客,本篇博客介绍OFBiz的MVC框架. 1.OFBiz特点 OFBiz最基本的特点是OFBiz提供了一整套的开发基于Java的web应用程序的组件和工具.包含实体引擎.服务引擎.消息引擎 ...
- win7+Apache 设置域名指向本地文件夹
实现:浏览器地址栏输入 www.bnzoo.com 访问 D:/www 系统:win7旗舰版+Apache 步骤: 1.打开文件 C:\Windows\System32\drivers\etc\hos ...
- apache环境下禁止某文件夹内运行PHP脚本、禁止访问文件或目录执行权限的设置方法
apache环境下禁止某文件夹内运行PHP脚本.禁止访问文件或目录执行权限的设置方法 首先我们来看两段对上传目录设置无权限的列子,配置如下: <Directory "要去掉PHP执 ...
- 使用WWW获取本地文件夹的XML配置文件
Unity3D读取本地文件可以使用Resources.Load来读取放在Resources文件夹下的文件,如果不是放在该文件夹下,则可以通过WWW类来读取. 譬如读取xml的配置文件. /// < ...
- Ubuntu根目录下各文件夹的功能详细介绍
Ubuntu的根目录下存在着很多的文件夹,但你知道他们都存放着哪些文件呢?这些是深入了解Ubuntu系统必不缺少的知识,本文就关于此做一下介绍吧. /bin/ 用以存储二进制可执行命令文件. / ...
- [JAVA IDEA]在使用maven项目中,无法读取resources文件夹中的配置文件的一种解决方案
1.在通过配置文件来连接数据库时,在resouces文件中放入了db.properties配置文件,但无法正常读取到 读取配置文件信息的代码: InputStream input=JdbcUtil.c ...
- Apache Tomcat目录下各个文件夹的作用
1.bin:存放各种不同平台开启与关闭Tomcat的脚本文件. 2.lib:存tomcat与web应用的Jar包. 3.conf:存放tomcat的配置文件. 4.webapps:web应用的发布目录 ...
- 宝塔 windows下apache环境下禁止某文件夹内运行PHP脚本、禁止访问文件
首先我们来看两段对上传目录设置无权限的列子,配置如下: //在宝塔下如用/upload这个路径应用无效,一定要C:/wwwroot/upload才有效果 <Directory "要去掉 ...
- apache rewrite设置 禁止某个文件夹执行php文件
RewriteRule (data|templates)/(.*).(php)$ – [F]
随机推荐
- Html语言的标签讲解
一.head头部中的内容: 1.<meta charset="UTF-8"> <--!告诉浏览器什么编码--> 2.<meta http-equiv= ...
- 【转】手动写一个Behavior Designer任务节点
http://blog.csdn.net/qq_33747722/article/details/53539532 自己手写一个类似于CanSeeObject.Seek等任务节点并不是一件难事 下面我 ...
- 201621123034 《Java程序设计》第1周学习总结
1. 本周学习总结 知道了java的用途有安卓手机应用,企业服务器后端,java web.学到了新概念:类.HelloWorld.java 中 HelloWorld 是主文件名,区分 .java和 . ...
- LAMP第一部分安装mysql -apache -php
1. 安装mysqlcd /usr/local/src/ 免安装编译二进制的包wget http://syslab.comsenz.com/downloads/linux/mysql-5.1.40-l ...
- Mybatis通过接口的方式实现增删改查
导入jar包 [mybatis] [oracle] 生成数据库 1.添加Mybatis的配置文件mybatis-config.xml 在src目录下创建一个mybatis-config.xml文件,如 ...
- CSA Round 84 Mahattan Center
题目 题目大意 给定平面上的 $n$ 个点和常数 $k$,求 $x$ 轴上的点 $p$ 到 $n$ 个点中距其最近的 $k$ 个点的距离之和的最小值.两点之间的距离定义为曼哈顿距离. 数据范围 $1\ ...
- [AHOI2017/HNOI2017][bzoj4827] 礼物 [FFT]
题面 传送门 思路 首先,有一个结论:两个手环增加非负整数亮度,等于其中一个增加一个整数亮度(可以为负) 我们令增加量为$x$,旋转以后的原数列为${a}{b}$那么现在的费用就是: $\sum_{i ...
- linux系统——fread()与read()函数族区别
fread与read区别: 1,fread是带缓冲的,read不带缓冲. 2,fopen是标准c里定义的,open是POSIX中定义的. 3,fread可以读一个结构.read在linux/unix中 ...
- lcx 端口转发
1.查看3389端口开放情况: REG query HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server\WinStati ...
- jQuery 之 验证表单
简单的东西重复做,做多了之后,才能说熟能生巧. 做好一个精美的页面,固然是好,但是,一个页面除了写好之外,我们更需要的是将其功能完善.比如表单的验证,这只是众多工作之一.然后本次就以jQuery的va ...