【Jsp精品源码栏目提醒】:网学会员,鉴于大家对Jsp精品源码十分关注,论文会员在此为大家搜集整理了“第三章_多层架构web应用_ - 其它资料”一文,供大家参考学习!
第3章 多层架构Web应用 内容提要 几个基本术语
JSP开发的两个MVC Model Struts中的MVC模式 Struts开发环境安装与配置 一个应用实例 3.1 几个基本术语 ASFApache Software Foundation Apache软件基金组织的缩写(创建于1999年),是 具有一些开放源代码及企业级应用的软件项目机构。
Jakarta 是ASF 旗下的一套Java解决方案的开源软件项目的 名称,包含很多子项目,Tomcat、Ant、Struts等也 是Apache 下的开源项目。
Tomcat 是一个免费开源的Servlet容器,具有Web服务器的 功能,是Apache 基金会Jakarta项目中的一个核心项 目,由Apache 、Sun和其他一些公司及个人共同开 发而成。
几个基本术语(续) Struts 是Jakarta的一个子项目它提供了一种方法可以在一 个Web应用程序中同时使用
JSP和Servlet。
是一个MVCModel-View-Controller 框架,以分 三层的结构来开发Web应用程序,不但结构明了, 且使程序容易维护。
框架 框架,即framework,是某种应用程序的半成品,是 一组组件,供开发系统使用,组件之间相互协作以 实现某一功能或行为。
框架能够为特定领域内的应用提供可扩展模板,能 够提供在应用程序之间共享的可复用的公共结构。
3.2
JSP开发的两个MVC Model MVC是一种设计模式,是“Model-View-Controller” 的缩写,中文翻译为“模型-视图-控制器”,即把一 个应用的输入、处理、输出流程按照Model、View、 Controller的方式进行分离 ,这样一个应用被分成三 个层—模型层、视图层、控制层。
MVC包括三类对象:Model是应用对象,即功能逻辑; View是屏幕显示,即UI界面; Controller定义用户 界面对用户输入的响应方式。
MVC模式是一个复杂的应用程序设计模式 ,最早是 smalltalk语言研究团队提出的,应用于用户交互应用 程序中。
视图View 视图View代表用户交互界面,对于Web应 用来说,可以概括为HTML界面,但有可能为 XHTML、XML和Applet。
MVC设计模式对于视图的处理仅限于视图上数 据的采集和处理,以及用户的请求,而不包括 在视图上的业务流程的处理。
模型Model 模型是业务流程/状态的处理以及业务规则的 制定。
业务流程的处理过程对其它层来说是黑 箱操作,模型接受视图请求的数据,并返回最 终的处理结果。
业务模型的设计可以说是MVC最主要的核心。
控制器Controller 控制器可以理解为从用户接收请求 将模型与 视图匹配在一起,共同完成用户的请求。
它就是一个分发器,选择什么样的模型,选择 什么样的视图,就可以完成什么样的用户请求。
控制层并不做任何的数据处理,只把用户的信 息传递给模型,告诉模型做什么,选择符合要 求的视图返回给用户。
MVC组件之间的关系和功能MVC Model 1 MVC Model 1的特点 早期开发
JSP项目时,最广泛的方法是JSPJavaBean。
MVC Model 1在UI图形用户界面端
JSP文件里,夹杂大 量的
JSP脚本和HTML语言代码及一些JavaScript脚本。
JSP是整个应用系统的门户,在
JSP页面中同时实现显 示、业务逻辑和流程控制 负责与客户端的所有通信 处理所有的请求 处理所有的答复,从数据库存取数据通过两种方式:
JSP自己 直接存取或JavaBean来完成。
缺点:不利于程序维护及开发角色的分配。
适合小型 系统和个人开发。
MVC Model 2 MVC Model 2的特点 MVC Model 2又称做以Servlet为中心的设计模型,模 型结构JSPServletJavaBean。
通过这种设计模型把 显示逻辑、处理过程和应用逻辑分成不同的组件来实 现,更易于实现对大规模系统的开发和管理。
Servlet控制数据存取和导航流,负责接收、处理客户 端请求,在Servlet中只包含控制逻辑和简单的前端处 理。
然后,调用后端JavaBean来完成实际的业务逻辑 处理,JavaBean直接与数据库打交道取得数据。
最后 把结果转发到合适的
JSP页面显示给用户。
缺点:增加了系统结构和实现的复杂性。
3.3 Struts中的MVC模式 Struts是一个基于Sun J2EE平台的MVC框架,是MVC模 式的一种实现。
Struts继承了MVC的各项特性,并根据J2EE的特点,做了 相应的变化与扩展。
Struts能充分满足应用开发的需求,简单易用,敏捷迅速, 颇受关注。
2006年,WebWork(是由OpenSymphony组织开发的一个 优秀的MVC模式的Java EE Web框架)与 Struts 这两个优 秀的Java EE Web框架的团体,决定合作共同开发一个新 的、整合了 WebWork 与 Struts 优点,并且更加优雅、扩 展性更强的框架,命名为 “Struts 2”,原Struts的1.x 版 本产品称为“Struts 1”。
Struts 2的MVC原理 Struts 2的基本组成 核心控制器FilterDispatcher FilterDispatcherStrutsPrepareAndExecuteFilter是Struts 2框架的核心控 制器,该控制器作为一个Filter运行在Web应用中,它负责拦截所有 的用户请求 ,当用户请求到达时,该Filter会过滤用户请求。
业务控制器Action 业务控制器组件就是用户实现Action类的实例。
模型组件业务逻辑组件 Struts2框架的业务控制器会调用模型组件的方法来处理用户请求,即 业务控制器不会对用户请求进行任何实际处理,用户请求最终由模 型组件负责处理。
业务控制器只是中间负责调度的调度器。
在业务 逻辑组件下面可能还包含Dao、领域对象等组件。
视图组件 Struts2使用
JSP、FreeMarker、Velocity等作为视图技术。
3.4 Struts 2开发环境安装与配置 jdk-6u27-windows-i586.exe apache-tomcat-6.0.32.exe myeclipse-8.6.1-win32.exe 3.5 Struts 2的一个应用实例 添加Struts框架支持文件 New Project-MyEclipse-Web Project-struts2工程名 struts1 - MyEclipse-Add Struts Capabilities 视图层的添加 控制层的添加 模型层的添加 部署、运行 小结 几个基本术语
JSP开发的两个MVC Model Struts中的MVC模式 Struts开发环境安装与配置 一个应用实例