- 1、本文档共228页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
主流开源框架
第一部分:Struts2框架(一)
Struts2快速入门
Struts2控制器
自定义拦截器
Action相关知识
章节目录
章节目录
Struts2工作原理
Struts2的优点
第一个Struts2应用
Struts2概述
Struts2与Struts1本质上没有太大联系
Struts1最初是Apache Jakarta项目的一部分,后来作为一个开源的MVC框架存在
Struts2是从WebWork框架上发展起来的,与Struts1没有直接关系
开发Struts2简单Demo的步骤
下载并导入Struts2框架的相关jar包
开发Model层业务逻辑
开发视图文件
开发Action类
在struts.xml中配置Action类
在JSP中调用Action
在web.xml中配置FilterDispatcher
Struts2简单实例的运行过程
用户提交请求
请求将被FilterDispatcher过滤
FilterDispatcher调用ActionMapper
FilterDispatcher将请求处理交给ActionProxy
ActionProxy通过Configuration Manager查找struts.xml
ActionProxy实例化ActionInvocation
ActionInvocation实例调用与Action有关的拦截器以及Action类的execute方法
根据struts.xml中配置的action的result,将面导航到指定的URL
Struts2的特点
Action中的execute方法没有参数,可以脱离容器环境进行单元测试
通过拦截器更为便捷地获得请求参数
页面导航不需要硬编码到源代码中
支持多种视图技术
强大的JSP标记库
教程案例准备
案例不关注业务逻辑
案例在后面章节不断完善
本节主要实现Model层
章节目录
过滤器
拦截器
Action
过滤器
过滤器是Struts2控制器的最前端控制器,请求对象首先被过滤器过滤
Struts2的过滤器有三个层次
ActionContextCleanUp过滤器
其他过滤器
FilterDispatcher过滤器
拦截器
拦截器(Interceptor)是Struts2中第二个层次的控制器
拦截器在Action执行的前后运行一些Action类需要的通用功能
拦截器使用AOP(面向方面编程)思想设计
API中提供了大量拦截器类
定义拦截器
使用拦截器前,必须先在struts.xml中定义拦截器
拦截器在interceptors下使用interceptor定义
package name=struts-default abstract=true
interceptors
interceptor name=“modelDriven” class=“erceptor.ModelDrivenInterceptor”/
/interceptors
/package
定义拦截器栈
如果某些拦截器总是一起使用,可以定义为拦截器栈
拦截器栈是某些拦截器的集合
interceptor-stack name=basicStack
interceptor-ref name= modelDriven /
interceptor-ref name= scopedModelDriven /
interceptor-ref name=params/
/interceptor-stack
Action中使用拦截器或拦截器栈
定义了拦截器或拦截器栈后,可以在Action中使用
通过interceptor-ref指定要使用的拦截器或拦截器栈
action name=Login class=com.etc.action.LoginAction
interceptor-ref name=params/interceptor-ref
定义默认拦截器或拦截器栈
对于一个package,可以定义该package中所有Action默认使用的拦截器以及拦截器栈
package name=com.etc.chapter01 extends=struts-default
default-interceptor-ref name=basicStack/
/package
struts-default.xml中定义的拦截器
API中的拦截器都已经在struts-default.xml的struts-default包中定义
package name=struts-default abstract=true
!—-配置拦截器信息--
interceptors
!—-定义拦截器--
in
您可能关注的文档
最近下载
- 安培力的经典练习题 (含答案详解).doc
- 公司会计招聘启事范文5篇3624.pdf
- JTGD30-2015公路路基设计规范.pdf
- 《回忆我的母亲》《我的母亲》多文本阅读.doc VIP
- 《文化的内涵与功能》优质课件.pptx VIP
- SAP财务操作手册版.pdf
- 口腔门诊急诊急救.pptx VIP
- (2023年)河南省开封市-协警辅警笔试真题(含答案).docx VIP
- 精品解析: 重庆市鲁能巴蜀中学校2023-2024学年九年级上学期10月月考物理试题(原卷版).docx VIP
- Unit1ExtendedReadingEatinginChina拓展阅读课件高中英语牛津译林版(2020)选择性.pptx
文档评论(0)