时,多层Web应用软件需要面对复杂的网络环境、多样化的用户需求、灵活的业务模式、复杂的业务流程、众多的组织机构及层次和角色分工等问题,在业务和技术上也是复杂多变的。
因此,如何组织应用程序以实现简单高效的程序编写、升级、维护和扩展,是当今web应用系统开发值得关注的热点之一。
Mvc设计模式的出现,给web应用系统开发带来了便利,它针对B/s三个主要方面的处理将系统划分为模型层、视图层、控制层,采用MvC模式构建Web应用系统的体系结构,能够有效的解决在web应用系统开发过程中由于系统结构的复杂程度较高而带来的如何解决代码之间的耦合度、代码的易维护性、应用框架的可重用性、组件的可重用性、易测试性和不同技能的开发人员的分工等诸多关键性问题。
因此,Mvc模式适应了日益复杂的Web应用系统的
设计需求。
为了降低MVC模式在J2EE平台上实现的复杂度,Web框架适时的诞生了。
Web框架大都是基于MVC模式的,它们定义了各自的一套规范,分别把业务逻辑,显示和流程分开,开发者只要按照这套规范进行开发,1就可以开发出低耦合的Web程序。
J2EE是由sun公司提出来的分布式企业计算平台,它利用Java 2技术,提供了一系列的中间件服务来简化诸多企业解决方案的开发、部署和管理相关的复杂问题【”。
随着J2EE跨平台技术的日趋成熟,因其可靠性、可扩展性等特点锝到了市场的认可,J2EE技术成为了web开发的主流。
J2EE应用程序主要包括4层:客户层、Web层、EJB层和EIs层【6J。
其结构如图1.1所示。
(1)客户层:用于处理用户和应用程序的交互。
可以是webclients,Applets或客户端应用程序。
web client包括两部分:动态的网页和浏览器。
web cliem简单方便,但不能做复杂的操作。
Applet是一个小的客户端
程序,它需要浏览器的JVM来执行,可以把一部分的业务逻辑用Applet来实现。
客户端应用程序提供了更加友好的图形界面的功能,它可以直接调用业务逻辑层中的EJB,当然,也可以打开一个HTTP链接,与Web层的Senrlet通讯。
f21 Web层:J2EE平台的Web层就是所谓的表示层。
它包含负责接收、处理和响应HTlP请求的服务器端组件。
Servlet和JSP是web层的两个J2EE技术。
Servlet和JsP会晌应原始客户机接收的mML、xML、GIF、Applet等等。
w曲组件通常需要与业务数据进行交互,可以通过EJB也可以直接从数据库与之交互。
使用RMI、JMs或者JAX_RPc来实现与EJB地通信,而与数据库和其他外部信息系统的通信则是使用JDBc或者Java连接器体系结构来实现。
JavaMail也可以与客户机
通信。
塑三盔塑些堂垡堡主堂垡笙奎 ∞HTTP/}ITTPs,印ple‘ 蝌RMI-IIoP●■帕Bc●■jAx-RPc(soAP) 图1.1 J2EE应用程序的结构图 F培1.1 nle s仇l曲】ral di姆r跗1 of廿Ie J2EE applic鲥0n (3)EJB层:EJB层包含负责封装应用程序业务逻辑的服务器端组件,是J2EE的核心。
EJB组件运行于应用服务器的EJB容器内,容器己经实现了很多的系统级问题,诸如事务、线程、安全性、远程调用、资源管理、持久化等【7】。
从而使得开发人员专注于业务逻辑而不必时时为烦琐、艰深的系统底层问题所侵扰。
到『B组件在运行时的特性可通过使用xML语言定义的配置描述符加以定制,无须更改代码,从而能很好地适应快速发展的电子商务等应用领域。
(4)企业信息@IS)层:企业信息系统层运行企业信息系统软件。
这层包括企业基础设施系统,例如企业资源计划(ERP)、大型机事务处理(Main盘ame TranS枷on Proces如酌、数据库系统及其他遗留信息系统(Legacy hf0姗ation systems)。
J2EE应用组件因为某种原因(例如访问数据库)可能需要访问企业信息系统。
在开发分布式企业级