关于作者:自从
08
年
10
月
21
日
辞职之后到现在12-27)已经有两个月的光景,两个月的时间,说长不长,相对于100年来说,简直如兔子尾巴,不长。说短也难熬,毕竟是66个日日夜夜。在这一段时间内,作者很少来博客,更不用说和大家打声招呼,在此表示诚挚的歉意。那么,作者都干什么去了?去了比较好的公司?还是改行了?还是做坏事蹲号子了?还是…..?不用猜测,作者没有拿着原子弹去轰炸靖国神社,如果靖国神社没有了,我们到哪去去便便?也没有扛着AK47参加索马里海盗,因为妈妈说不劳而获是可耻的。作者在家研究代码来着,闭关修行,确切的说是在完善一个从05年就想完成而一直没有完成的一个心愿,就是开发一个快速的开发平台。所使用的技术是比较老的,实现的功能也是比较常见的,可以这么定义:没有新的内容,但是针对一些领域开发应用软件来讲,方便。下面就简单的介绍一下这些天的劳动结果。欢迎大家批评指正
1. 平台开发背景:
1.net
的出现
- 开发工具:基于.net的web开发软件.net framework。
- 优点:易学,易用,上手快,快速建模,对使用者要求低。
- 缺点:需要支付费用,后台的处理逻辑需要花时间去学习,修改后台处理的流程需要对平台有较多的理解。
2.
基于
java
的
web
开发平台
1.
常用开发软件以及工具
Struts,webwork,Spring,Hibernate,JSF
,
myEclipse
,等
2.
优点:
free
,源码开放,
ssh
框架满足大型企业级应用的开发需求。
Strut2.0
整合了
Strut,webWork
和
Spring
,使得
Strut
成为业界公认的优秀开发平台,并被普遍接受。
3.
基于
Java
开发的
web
应用程序具备
Java
的优点,并且有许多开源的软件提供相应的支持,比如
tomcat
等
web
服务容器,
ANT
,
jdom
,
xdoclet
等组件,对于没有足够资金支付软件使用费用的公司来说,开源软件是经济的选择。
4.
基于
java
的开源软件大部分为国外开发,对于使用者还需要进行学习和本土化。对于快速开发的支持有一定的局限。
5.
国内技术,各大公司都具有自己的快速开发平台,对于大型的开发,平台的支持能力
明显欠缺,最终弃之不用。商用的快速开发平台如
fastUnit
支持界面的可视化开发和定制,功能强大但维护复杂,对高级开发者的要求高。
6.
本平台是在国内外先进技术发展的基础上,借鉴优秀软件的设计思想,针对开发适用于中小企业软件的开发公司定制的。汲取
.net
平台的易用性特点。
Struts
平台的验证、自定义标签和
MVC
架构,
Hibernate
的数据层封装操作,融合了
jspsmart
、
jdom
、
applet
、
kindEditor
、
c3p0
,
popcalender
等开源组件,使用了单例、工厂、职责链、代理、命令等多种设计模式。
- 平台特点
- 平台的目标是:易学,易用,易维护。
- 平台的目的:构建一个方便开发者使用的快速开发工具,使得开发者把更多的精力投入到业务当中。
- 平台具有针对性。平台不会宣称支持所有类型的开发。设计者借鉴2/8思想,对常用领域的应用找出最常用的功能,针对这些功能开发代码。
- 框架结构简单,MVC架构,视图层提供的方便易用的自定义标签,中间层使用XML作为配置文件,
- 开发者要求低,开发者需要了解基本的数据库操作、xml知识、html、javaScript即可以胜任高级开发,初级开发者只需要了解数据库具有字段和字段类型即可。
- 部署方便,平台提供bat脚本,部署程序的过程简化为双击并修改1~2个参数。
- 代码易于管理,平台提供ant脚本实现应用的打包,部署,加密,解密,授权。
- 界面风格多样化,平台提供多个风格模板供用户选择(升级)。
- 支持特殊需求开发,平台提供基础类供开发者使用。
- 支持多种数据库,mysql, mssql, oracle, postGreSql, sysbase等
- 支持文件上传,统计图表,大文本字段(clob),树形组件。
- 支持多种服务器,平台开发基于servlet 2.3规范,凡是支持servlet2.3规范的服务器均适用。Tomcat、webLogic、webSphere等。
- 跨平台,继承自java。
- 客户端支持IE,遨游等以IE为内核的浏览器,不支持fireFox。
- 支持数据双向加密(crm)
3.
简单示例
•
假设目前需要一个维护公司部门的功能模块,每个部门都有上级部门,每个部门有部门名称,部门编号,和所属机构。所属机构可以理解为一个总公司或者学校,比如北京大学,下面有学院,学院下面系别,每个学院和系别都属于北京大学。所属机构和上级部门都引用自身作为参照。
•
第一步
,
确定表名和字段
•
表名:部门表
(sysDept)
•
主键
:pk1
•
名称
:deptName
•
编号
:deptNo
•
上级部门
:pdeptpk
•
机构
:org
上级部门和所属机构需要引用自身,需要使用动态选择的标签,因此需要添加另外的字段
.
上级部门
:pdeptpk_show
机构
:org_show
第二步:录入表的信息

第三步:生成相应的页面,依次点击按钮生成
tableTag, moduleTag,jsp Tag,dbTable,dynTag

第四步:配置资源即访问路径。

第五步:为访问部门维护功能的角色授权
(
角色授权用户略去
)
,拥有相应角色的用户就可以访问此资源。

生成的主界面:

新增界面:

•
其他用途:柱形图统计

•
文本编辑

•
文件上传等
以上所展示的功能都为自动生成,不需要其他的干预。
•
结论:本平台适合的项目:
•
具有大量信息录入,修改,查询,删除
•
具有审批流程(非工作流)
•
业务报表
•
文件管理
•
信息发布后台
•
数据安全未达到国家机密要求的项目
•
不适合的项目:
•
门户网站
•
个性化网站
本文转自凌辉博客51CTO博客,原文链接http://blog.51cto.com/tianli/123799如需转载请自行联系原作者
lili00okok