一种动态Web自动装配系统的设计与实现摘要:大多数中小企业的Web系统属于轻量级业务处理。基于JavaWeb平台,提出了一种轻量化系统开发架构,该架构实现了请求形式的改变与业务处理本质的统一,支持常规业务逻辑的自动装配处理,具有可复用、标准化、代码量低的优势。关键词:JavaWeb;装配;架构;设计随着网络技术、计算机技术的发展,越来越多的中小企业单位开始走上信息化的道路。这些企事业单位不仅需要外部网站的建设,同时还有内部Web信息管理系统的建设(例如人力资源管理系统、考勤管理系统等)。根据国家工商总局公布的数据,2005年我国中小企业规模数量为2836万家,而网站总数量仅为69万家;2012年我国中小企业规模猛增到5175万家,而网站总数量仅仅为530万家。显然,企业内外部Web系统数量远远低于企业现有数量。因此,基于Java跨平台特性,JavaWeb系统具有极大地市场需求和开发潜力。中小企业内外部Web系统具有一些共性特征:动态、轻量化,例如一般涉及数据处理,且数据量不是很大、业务处理逻辑也不复杂。其网站常见功能有:单位组织的介绍、产品的介绍、用户管理、新闻管理、在线咨询或服务等。而内部Web系统的功能侧重于数据的查询、录入、更新、删除等,较少涉及复杂的数据关联处理。对于上述轻量化的常规数据处理,研究一种能够将业务逻辑处理自动装配的系统DWAS(DynamicWebAssemblySystem),具有良好的现实意义:(1)避免重复编写数据的增删查改等操作,自动装配业务处理逻辑,提高复用性,降低开发成本;(2)提供一个标准化、高质量、轻量化的业务逻辑处理基础平台,降低由于开发人员水平差异带来的系统质量问题;(3)降低Web系统开发门槛,用户只需要进行简单的系统配置或组装操作即可完成功能处理要求。1系统设计架构1.1总体架构DWAS基于MVC架构,融合Hibernate、Struts和SpringMVC思想。系统着重基于B/S模式的轻量级Web系统开发。DWAS能够自动装配常规SQL操作,用户无需编写SQL语句。DWAS能够自动装配组合查询:对于多条件的组合查询数据,动态Web自动装配系统能够自动适应。系统能够自适应视图变化:当视图层提交数据的形式改变(例如增加或删除页面表单域)时,无需修改处理逻辑的程序代码。DWAS支持主流数据库和连接池产品,其应用方式也显示多样化特征。DWAS总体架构。来自于页面的业务处理请求,先由DWAS的前端控制器接收,然后由控制器工厂自动装配。控制器工厂调用模型层相应的业务处理Bean,由后者与数据库进行交互。最后,控制器工厂将处理后并按照要求封装好的结果数据转发给最终的结果页面(例如显示登录成功的界面)。1.2与同类产品的比较分析目前市场上主流的同类产品主要有SpringMVC、Struts和Hibernate等。具体比较分析如表1所示。Spring是轻量级的控制反转和面向切面的开源框架,是为了解决企业应用开发的复杂性而创建。SpringMVC需要配置过多的XML文件。Struts是ApacheJakarta项目的一个顶级项目,采用了基于Web的MVC模式。Struts的不足在于过于繁杂的标签体系和大量不太适用的功能。Hibernate是一个开放源代码的对象关系映射框架,使用对象编程思维来操纵数据库,但对于批量数据的修改删除操作不太适合。DWAS汲取了这些产品的优点,进行了设计思想上的整合、修正和完善。1.3自动装配流程DWAS装配流程。系统准备:JDK、服务器环境的配置、数据库服务器的安装、DWAS系统JAR文件的配置等;编写实体类和XML配置文件:与业务处理逻辑对应的实体类、描述业务处理的标识或SQL语句的XML配置文件;视图页面和运行结果页面:前者是业务处理请求界面,后者则是反馈执行结果的界面。对第①部分的处理,使用一些文本编辑器即可完成,并不需要开发设计人员具有较高的开发水平。因此,即使是系统前台的设计人员稍作培训,都可以完成。而第②部分,则由DWAS负责自动完成。1.4应用方式DWAS的应用方式很灵活,既可以将其扩展成独立的IDE平台,也可采用插件方式与第三方IDE集成。2实践应用展示2.1应用场景为简化说明,假定这样的几个应用场景:学生信息查询(不定条件)、学生注册。考察在视图发生变化的情况下,DWAS自适应这种变化的处理能力。对于不...