struts2中的action_servlet filter listener顺序

struts2中的action_servlet filter listener顺序【FilterDispatcher作用】核心控制器FilterDispatcher是STRUTS2框架的基础,包含了框架内部的控制流程和处理机制。业务控制器Action和业务逻辑组件是需要用户来自己实现的。用户在开发Action和业务逻辑组件的同时,还需要编写相关的配置文件,供核心控制器FilterDispatcher来使用。主要作用如下:1、执行action:过滤器根据请求的url判断是否需要

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

【FilterDispatcher作用】核心控制器FilterDispatcher是STRUTS 2框架的基础,包含了框架内部的控制流程和处理机制。业务控制器Action和业务逻辑组件是需要用户来自己实现的。用户在开发Action和业务逻辑组件的同时,还需要编写相关的配置文件,供核心控制器FilterDispatcher来使用。主要作用如下:
1、执行action:过滤器根据请求的url判断是否需要调用action(判断的依据是根据actionMapper)如果需要执行action那么处于过滤器链中的其他过滤器将终止,并且调用action.
这意味着其他一些一定要执行的过滤器必须放在FilterDispatcher前面.以保证他们的执行。
2、清空ActionContext上下文:FilterDispatcher讲自动的清除上下文,确保没有内存泄露.但是有时候将导致在集成其他产品时出现某些问题。
3、服务静态的内容:FilterDispatcher同时会加载常用的静态内容,例如javascript文件,css文件。FilterDispatcher会查找/struts/*这个目录,并且映射"/struts/"后面的的所有常用的包。

4、中断请求生命周期中的XWORKS拦截器

FilterDispatcher是struts2.0.x到2.1.2版本的核心过滤器. 从2.1.3版本开始, 就用StrutsPrepareAndExecuteFilter代替FilterDispatcher了.

如果是FilterDispatcher

<filter>
   <filter-name>struts2</filter-name>
   <filter-class>
     org.apache.struts2.dispatcher.FilterDispatcher
   </filter-class>
</filter>
 
<filter-mapping>
   <filter-name>struts2</filter-name>
   <url-pattern>/*</url-pattern>
</filter-mapping>

如果是StrutsPrepareAndExecuteFilter则为:

<filter>
  <filter-name>struts2</filter-name>
  <filter-class>
        org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
  </filter-class>
</filter>
 
<filter-mapping>
   <filter-name>struts2</filter-name>
   <url-pattern>/*</url-pattern>
</filter-mapping>

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/170661.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 前端开发中常用的几种设计模式有哪些_设计模式原理

    前端开发中常用的几种设计模式有哪些_设计模式原理设计模式是对软件设计开发过程中反复出现的某类问题的通用解决方案。设计模式更多的是指导思想和方法论,而不是现成的代码,当然每种设计模式都有每种语言中的具体实现方式。学习设计模式更多的是理解各种模式的内在思想和解决的问题,毕竟这是前人无数经验总结成的最佳实践,而代码实现则是对加深理解的辅助。设计模式可以分为三大类:结构型模式(StructuralPatterns):通过识别系统中组件间的简单关系来简化系统的设计。 创建型模式(CreationalPatterns):处理对象的创..

    2022年10月25日
    0
  • pycharm2021 linux专业版永久激活码[在线序列号][通俗易懂]

    pycharm2021 linux专业版永久激活码[在线序列号],https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月18日
    203
  • oracle中is not null,oracle之is null和is not null的优化「建议收藏」

    oracle中is not null,oracle之is null和is not null的优化「建议收藏」oracle之优化isnull语句一:isnull的优化方法:通过nvl(字段,j)=j的方式,将字段中为空的数据转化为j,从而正常使用索引。具体实现条件则是:iisnull<===>j=nvl(i,j);注意:使用时必须要确保字段的数据不包含j,例如:(age,15)=15,此时有可能age内容是15,此时不可以,j的值要变换,保证不再age的范围之内。函数介绍:nv…

    2022年8月30日
    3
  • 打印纸张尺寸换算_各种打印纸的尺寸是多少?「建议收藏」

    打印纸张尺寸换算_各种打印纸的尺寸是多少?「建议收藏」展开全部常用打印纸尺寸为:A4(16k)297mm×210mm;A5(32k)210mm×148mm;A6(64k)144mm×105mm;A3(8k)420mm×297mm。按照尺寸的大小,通常62616964757a686964616fe4b893e5b19e31333431343738分三种类型:大型开本、中型开本和小型开本。以787×1092的纸来说,12开以上为大型开本,16~36开为…

    2022年6月20日
    63
  • 3d工具收集_3d图表走势综合版

    3d工具收集_3d图表走势综合版Poser是Metacreations公司推出的一款三维动物、人体造型和三维人体动画制作的极品软件。用过Poser2与Poser3的朋友一定能感受到Poser的人体设计和动画制作是那么的轻松自如,制作出的作品又是那么生动。而今Poser更能为你的三维人体造型增添发型、衣服、饰品等装饰。让你的设计与创意轻松展现。Mixamo:在线3D动漫角…

    2022年8月23日
    6
  • java io 试题_Java IO流面试题

    java io 试题_Java IO流面试题字节流与字符流的不同是他们的处理方式,字节流是最基本的,采用ASCII编码。但是实际上很多数据是文本,所以提出字符流的概念,采用unicode编码两者之间通过inputStreamReader与outputStreamWriter来关联,实际上是通过byte[]与String来关联字节流输出:程序–>字节流–>文件字符流输出:程序–>字符流–>缓冲–>文件程序中所有…

    2022年4月25日
    26

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号