- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
简单理解Sturts中拦截器与过滤器的区别及执行顺序
简单理解Struts2中拦截器与过滤器的区别及执行顺序
当接收到一个httprequest , a) 当外部的httpservletrequest到来时 b) 初始到了servlet容器 传递给一个标准的过滤器链 c) FilterDispatecher会去查找相应的ActionMapper,如果找到了相应的ActionMapper它将会将控制权限交给ActionProxy d) ActionProxy将会通过ConfigurationManager来查找配置struts.xml i. 下一步将会 通过ActionInvocation来负责命令模式的实现(包括调用一些拦截Interceptor框架在调用action之前) ii. Interceptor做一些拦截或者初始的工作 e) 一旦action返回,会查找相应的Result f) Result类型可以是 jsp或者freeMark 等 g) 这些组件和ActionMapper一起返回给请求的url(注意拦截器的执行顺序) h) 响应的返回是通过我们在web.xml中配置的过滤器 i) 如果ActionContextCleanUp是当前使用的,则FilterDispatecher将不会清理sreadlocal ActionContext;如果ActionContextCleanUp不使用,则将会去清理sreadlocals。
1、拦截器是基于java反射机制的,而过滤器是基于函数回调的。2、过滤器依赖于servlet容器,而拦截器不依赖于servlet容器。3、拦截器只能对Action请求起作用,而过滤器则可以对几乎所有请求起作用。4、拦截器可以访问Action上下文、值栈里的对象,而过滤器不能。5、在Action的生命周期中,拦截器可以多次调用,而过滤器只能在容器初始化时被调用一次。
org.apache.struts2.dispatcher.FilterDispatcher的四个功能
org.apache.struts2.dispatcher.FilterDispatcher是Struts2的主要的Filter,负责四个方面的功能: (1)执行Actions (2)清除ActionContext (3)维护静态内容 (4)清除request生命周期内的XWork的interceptors 另注:该过滤器应该过滤所有的请求URL。一般被设置为/*.(过滤所有的请求!) 具体: (1)执行Actions 过滤器通过ActionMapper对象,来判断是否应该被映射到Action.如果mapper对象指示他应该被映射,过滤链将会被终止,然后Action被调用。这一点非常重要,如果同时使用SiteMesh filter,则SiteMesh filter应该放到该过滤器前,否则Action的输出将不会被装饰。 (2)清除ActionContext 过滤器为了确保内存溢出,会自动的清除ActionContext。这可能会存在一些问题,在和其它的框架集成时,例如SiteMesh。ActionContextCleanUp提供了怎么处理这些问题的一些信息。 (3)维护静态内容 过滤器也会维护在Struts2中使用的一些公共的静态的内容,例如JavaScript文件,CSS文件等。搜索/struts/*范围内的请求,然后将/struts/后面的值映射到一些struts的公共包中,也可以在你的类路径中搜索。默认情况下会去查找以下包:org.apache.struts2.static.template。这样你只用请求/struts/xhtml/styles.css,XHTML UI主题默认的样式表将会被返回。同样,AJAX UI组件需要的JavaScript文件,也可以在org.apache.struts2.static包中被找到。如果你想加入其它被搜索的包,在web.xml中设置filter时,通过给actionPackages初始参数一个逗号隔开的包列表值来设定。 需注意的是:他会暴露一些比较敏感的信息例如,properites文件中的数据库连接信息。 注:过滤器支持以下初始参数: config - 被调入的逗号隔开的XML文件列表。 actionPackages - 被actions扫描的逗号隔开的packages列表。
您可能关注的文档
- 2019年三年级英语下册 Module 5 Unit 2 What time is it(IV)教学案 外研版.doc
- 2019年三年级英语下册 Module 6 Unit 1 What do you do at the weekend教学案 外研版.doc
- 2019年三年级英语下册 Module 6 Unit 1 What do you do at the weekend(3)教学案 外研版.doc
- 新人教版八年下级册物理四分之三月考.doc
- 2019年三年级英语下册 Module 6 Unit 1《What do you do on Sunday》教案 外研版.doc
- 新人教版八年上级册数学第十二章《全等三角形》同步检测题.doc
- 2019年三年级英语下册 Module 6 Unit 2 What does she do at the weekend教学案 外研版.doc
- 2019年三年级英语下册 Module 9 Unit 1 I've got a new book教学案 外研版.doc
- 第五章经营决策常用成的本概念及基本方法.doc
- 2019年三年级英语下册 Module 9 Unit 1 I’ve got a new book.教学案 外研版.doc
- 2025蒙商银行秋季校园招聘备考题库及答案详解(网校专用).docx
- 2025西安银行招聘备考题库含答案详解(考试直接用).docx
- 2025年庆城县事业单位联考招聘考试真题汇编汇编.docx
- 2025年平舆县事业单位联考招聘考试历年真题最新.docx
- 2025年望都县事业单位联考招聘考试真题汇编完美版.docx
- 2024年西丰县辅警招聘考试真题汇编最新.docx
- 2025年瓜州县事业单位联考招聘考试真题汇编推荐.docx
- 2025年方山县事业单位联考招聘考试真题汇编必考题.docx
- 2025年榆社县事业单位联考招聘考试真题汇编附答案.docx
- 2025年恭城县事业单位联考招聘考试历年真题附答案.docx
最近下载
- 提高非开挖定向钻进施工合格率.pdf
- ASME RTP-1-2019 国外国际规范.pdf
- 小学生百科知识竞赛PPT课件.pptx VIP
- 新上任村书记就职发言稿(通用版).docx VIP
- 2025年检察机关聘用制书记员招聘考试题库及答案(综合知识+法律基础知识).docx VIP
- SINAMICS-G120XA变频器操作说明书.pdf VIP
- 《新闻心理学》课件(全).pptx VIP
- 华福证券-策略深度报告:AI的宏观悖论与社会主义全球化.pdf VIP
- 2025年检察机关聘用制书记员招聘考试题库(综合知识+法律基础知识).docx VIP
- 个人向个人借款协议简易版本8篇.docx VIP
原创力文档


文档评论(0)