- 2
- 0
- 约1.07万字
- 约 20页
- 2017-06-03 发布于湖北
- 举报
第一章 Struts2的起源和发展
说到网络应用很难让人不联想到网络信息的浏览,自从Internet进入民用领域之后,上网成为了越来越多的人闲暇时光的消磨手法。于是网络系统的开发也变得越来越总要。
1.1 Web技术的发展
随着Internet技术的大面积应用和发展,传统的静态HTML页面由于缺乏足够的用户交互能力已经无法满足日益膨胀的网络需求。人们希望Web应用中能够包含更多的动态交互功能,于是为了应对拥有更广泛用户群的动态Web开发,软件开发商分别推出的ASP和JSP两款动态网站开发解决方案。但是当时的JSP开发并没有很科学的层次设计,最初的JSP开发中逻辑代码和前端代码杂合在一起。虽然在最初开发时这样的做法使得开发非常的容易,然而随着Web系统的使用越来越广泛,应用规模的日益增长,如果继续使用传统的简单的JSP + Servlet结构进行Web系统的开发,则会由于系统层次混乱而导致系统的开发难度和维护成本越来越大,最终使开发过程陷入困境。
1.2 MVC思想进入Web系统开发
面对开发过程中所出现的困难,开发者们试图寻找一种能够使得开发结构更加具有条理性的开发模式。根据以往面向对象系统设计的经验,开发者开始将MVC开发模式引入Web系统的开发。MVC模式将一个应用分为三个基本部分:Model(模型)、View(视图)、Controller(控制器)。在此模式中触发事件由控制器捕获,并根据事件的类型来改变模型和视图。这样既可将系统模型与视图分离,从而使各部分能够工作在最小的耦合状态下协同工作,从来提高系统的扩展性和可维护性。将其引入Web系统开发后,系统模式由传统的JSP完成用户请求和响应改变为由控制器捕获用户请求,JavaBean完成模型操作,而JSP专门负责响应用户需求。老一代的开发框架Struts1便是这时的产物。
1.3 Struts2开发框架的成型
随着Struts1框架在Web系统开发中的大量应用,越来越多的使用者发现Struts1有着许多不可避免的缺陷。首先,Struts1只支持JSP作为表现层,然而并不是所有的Web系统都必须使用JSP进行信息反馈。其次,Struts1编写业务逻辑控制器时,必须调用大量Servlet API,而这些接口都是依赖于Web服务器的。这样就造成了业务逻辑测试无法脱离Web容器,造成了测试的困难。最后,由于大量的Servlet API使用,使得系统结构混乱,使得这些业务逻辑在使用其他框架是需要大量重写,降低了代码使用效率。为了应对这些问题,Struts2去除了业务逻辑中对于Servlet API的耦合,使得业务逻辑类不需要继承任何Struts2基类,降低了测试难度,也加强了Action类的可移植性。
1.4 本章小结
本章从Web系统开发的发展历程入手,讲述了Web系统开发模式的变化,从而引出了Struts框架的起源,描述了Struts1的出现,以及所带来的问题。并由此解释了Struts2出现的目的,和解决的问题。
第二章 Struts2框架的基本原理
学习一个框架,我们首先要了解他的工作原理和基本工作方式,由此才能够进行后续的学习和使用,本章从基本的流程开始讲解Struts2的基本原理和相关配置。
2.1 Struts2的事务处理流程
相对于Struts1框架,Struts2为了使业务逻辑控制与Servlet容器的API分离而大量使用了拦截器来处理用户的请求。首先由Struts2的核心控制器拦截到用户在浏览器中发送的请求,然后核心控制器根据请求调用适当的Action进行处理。然后根据Action返回的参数选择对应处理方式将处理的结果返回给浏览器。
2.2 Struts2的基本配置
Struts2的基本配置主要包括三个部分:站点设置、核心设置控制器、业务控制器设置。
2.2.1 为站点添加Struts2框架支持
要使用Struts2框架开发就必须要将Struts2框架嵌入到当前的Web系统中,为Web系统提供相关支持。那么我们需要被指配置WEB-INF路径下的web.xml文件,将Struts2的核心控制器键入系统。该Web.xml文件在开发过程中该文件会存在与源代码目录中。
具体设置比较简单,只需要将web.xml中的filter标签配置为:
filter filter-name Struts2/filter-name filter-classorg.apache.struts2.dispatcher.FilterDispatcher/filter-class
/filter
filter-mapping
filter-nameStruts2/filter-name
url-pattern/*/url-pattern
/filter-mapping
这样设置之后系统将会调用str
您可能关注的文档
- 新版砌体规范.ppt
- 新版人教版新目标英语七年级上册全册语法总结.doc
- 信号与系统第六章.ppt
- 新版人民币.ppt
- 信号与系统第三章付里叶变换.pptx
- 新版五上纲要分享课.ppt
- 新版新目标英语八年级上册unit1-10知识点总结.ppt
- 信号与系统实验指导书.doc
- 新版-药品市场营销学-第二章药品市场营销环境.ppt
- 新版一年级语文上册全册教学反思.doc
- 2025-2026学年天津市和平区高三(上)期末数学试卷(含解析).pdf
- 2025-2026学年云南省楚雄州高三(上)期末数学试卷(含答案).pdf
- 2025-2026学年甘肃省天水市张家川实验中学高三(上)期末数学试卷(含答案).docx
- 2025-2026学年福建省厦门市松柏中学高二(上)期末数学试卷(含答案).docx
- 2025-2026学年广西钦州市高一(上)期末物理试卷(含答案).docx
- 2025-2026学年河北省邯郸市临漳县九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省石家庄二十三中七年级(上)期末历史试卷(含答案).docx
- 2025-2026学年海南省五指山市九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省唐山市玉田县九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省邢台市市区九年级(上)期末化学试卷(含答案).docx
最近下载
- 2025高中英语教师课程标准考试模拟试卷及参考答案.docx VIP
- 第12课 绿意再生课件-赣美版(2024)初中美术七年级下册.pptx VIP
- 2025年青岛西海岸新区自主招生化学试题及答案.docx VIP
- 2024-2025学年江苏卫生健康职业学院单招《英语》考前冲刺练习(真题汇编)附答案详解.docx VIP
- GJ B 2446-2-2013 J30系列微矩形电连接器详细规范.pdf VIP
- 2025年内蒙古中考物理试卷及答案.docx VIP
- 第11课+传递绿色理念+课件+2024—2025学年赣美版(2024)+初中美术七年级下册.pptx VIP
- 2025年江苏卫生健康职业学院单招《数学》真题带答案详解(模拟题).docx VIP
- 2023年广东省中考道德与法治试卷真题及答案详解.pdf
- 相变的软模理论.ppt VIP
原创力文档

文档评论(0)