1 / 11
文档名称:

Struts框架及其在Web开发中的应用.doc

格式:doc   页数:11
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

Struts框架及其在Web开发中的应用.doc

上传人:豆芽 2014/2/16 文件大小:0 KB

下载得到文件列表

Struts框架及其在Web开发中的应用.doc

文档介绍

文档介绍:Struts框架及其在Web开发中的应用
(作者:___________单位: ___________邮编: ___________)
摘要 Struts是当前Web应用开发中最为流行的框架之一。本文简要介绍了MVC(Model/View/Controller)设计模式和Struts框架的体系结构,然后结合一个实例,讲述了Struts实现MVC模式的Web应用的过程。结果显示Struts能够大大提高开发效率,同时提高系统的可维护性和扩充性。
关键词 MVC模式;框架;Struts;Web应用
0 引言
传统的Web应用开发工具(ASP、JSP)将页面显示、商业逻辑和数据处理大部分都集中在页面代码中,Web应用扩展维护比较困难,也不利于开发人员分工协作,在大型WEB应用开发中愈发显得力不从心。MVC(Model-View-Controller)设计模式将页面显示、商业逻辑和数据处理相分离,最大限度的降低系统各部分之间的耦合性,从而增强系统的可扩展维护性,提高代码重用率,使系统的层次结构更加清晰,易于分工协作。而Struts是一个为开发基于MVC模式的应用架构的开源框架。
1 Struts框架的体系结构
MVC设计模式
MVC设计模式是一种
“分治”的思想,它使应用程序的输入、处理和输出分开,把应用程序分成三个核心模块:模型(Model)、视图(View)和控制器(Controller)。Model用来储存应用程序的数据以及访问、维护这些数据的业务逻辑,View建立终端用户的表示层,Controller是模型与视图的接口,其作用是获取并处理HTTP请求,并调用相关的业务模型中的方法对请求进行处理,然后将对象模型层次处理后的结果返回到View。可见MVC设计模式的主要优点是实现了业务逻辑和显示逻辑的分离,提高了系统的可维护性、可扩展性、可移植性和组件的复用性。
Struts框架
Struts是基于MVC的Web应用框架,由一组相互协作的类、Serlvet以及JSP TagLib组成。在Struts框架中,模型由实现业务逻辑的JavaBean或EJB组件构成,控制器由ActionServlet和Action来实现,视图由一组JSP文件构成。Struts框架的体系结构如图1所示。下面分别从模型、视图、控制来看看struts的体系结构。
视图:主要是通过JSP技术生成页面完成视图,利用Struts提供的自定义标记库编写用户界面把应用逻辑和显示逻辑分离。Struts框架通过这些自定义标记建立了View和Model之间的联系,可以实现和Model部分中的ActionForm的映像,完成对用户数据的封装。
图1 Struts体系结构
控制器:作用是从客户端接受请求,并选择执行相应的业务逻辑,然后把响应结果送回到客户端。在Struts中,控制器由ActionServlet和ActionMapping对象构成,核心是一个Servlet类型的对象A
ctionServlet,它用来接受客户端的请求并分发到相应的动作类(Action类的子类)。ActionServlet包括一组基于配置的ActionMapping对象,每个ActionMapping对象实现了一个请求到一个具体的Model部分中Action对象之间的映射。
模型:在Struts中,Model可以分为系统的内部状态和改变系统状态的行为(业务逻辑)两部分。系统的内部状态常由一组JavaBean表示,业务逻辑由Action和ActionForm的类对象处理。Action对象封装了具体的处理逻辑,调用业务逻辑模块,并且把响应提交给合适的View以产生响应业务对象更新应用程序的状态。ActionForm可以派生子类对象,通过结合自定义标记库以实现对客户端的表单数据的良好封装和支持。Action对象可以直接对ActionForm进行读写,而不再需要和request,response对象进行数据交互。通过ActionForm对象实现了对View和Model之间交互的支持。
Struts-:用于建立Controller和Model之间的关系,将各部分紧密联系在一起。它描述了Con
troller所使用的把请求对应到具体处理的法则,同时它还描述了客户提供的数据与ActionForm组件的对应映射关系。
Sturts的工作流程
对于采用Struts框架的Web应用,在Web应用启动时就会加载并初始化ActionServlet,从struts-,把他们存放到各种配置对象中。其具体工作流程如下:
⑴客户端(Client)通过本地浏览器(Browser)向服务器发出一个

最近更新

2025年山东圣翰财贸职业学院马克思主义基本原.. 12页

2025年山西省财政税务专科学校单招职业适应性.. 46页

2025年巴塘县招教考试备考题库带答案解析 31页

2025年广东省湛江市单招职业适应性考试题库带.. 43页

2025年广西信息职业技术学院马克思主义基本原.. 13页

2025年库车县招教考试备考题库含答案解析(夺.. 31页

2025年弋阳县幼儿园教师招教考试备考题库及答.. 30页

2025年惠州工程职业学院单招职业倾向性测试题.. 44页

2025年新化县幼儿园教师招教考试备考题库带答.. 31页

2025年晋中职业技术学院单招职业技能测试题库.. 45页

2025年武汉工程大学马克思主义基本原理概论期.. 12页

2025年永德县招教考试备考题库含答案解析(夺.. 31页

2025年江苏工程职业技术学院单招综合素质考试.. 45页

2025年江西应用工程职业学院马克思主义基本原.. 13页

2025年沈阳化工大学马克思主义基本原理概论期.. 13页

2025年河北管理干部学院马克思主义基本原理概.. 13页

2025年河池学院马克思主义基本原理概论期末考.. 13页

2025年浙江理工大学马克思主义基本原理概论期.. 12页

2025年湖北开放大学马克思主义基本原理概论期.. 13页

2025年湖南省岳阳市单招职业倾向性测试题库带.. 43页

2026年中医住培带教师资理论考核题库100道附完.. 40页

2025年潼南县幼儿园教师招教考试备考题库附答.. 31页

2025年玉林职业技术学院马克思主义基本原理概.. 12页

2025年疏勒县招教考试备考题库带答案解析(夺.. 31页

2026年宪法知识竞赛试题库100道及答案(精选题.. 40页

2025年绍兴县招教考试备考题库及答案解析(必.. 30页

小学历史与文化知识竞赛题库100道及答案【有一.. 37页

2025年西安电力机械制造公司机电学院马克思主.. 13页

2025年贵州财经职业学院马克思主义基本原理概.. 12页

2025年连山县幼儿园教师招教考试备考题库含答.. 30页