FilterDispatcher处理流程「建议收藏」

FilterDispatcher处理流程「建议收藏」org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter前身是:org.apache.struts2.dispatcher.FilterDispatcher请求被web.xml中定义的过滤器拦截。3层过滤器处理:ActionContextCleanUp,其他过滤器(OtherFilters,SiteM…

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

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

org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter

前身是:org.apache.struts2.dispatcher.FilterDispatcher

请求被web.xml中定义的过滤器拦截。

3层过滤器处理:ActionContextCleanUp,其他过滤器(Other Filters, SiteMesh),FilterDispatcher

——FilterDispatcher中首先询问ActionMapper是否需要调用某个Action

——如果调用,把请求交给ActionProxy

——ActionProxy通过struts.xml找到Action类。

——ActionProxy创建一个ActionInvocation实例。并调用Action。调用之前ActionInvocation会加载Action的所有拦截器。

执行完ActionInvocation负责根据struts.xml中的配置找到相应的返回结果result

==========================================================================

Servlet中过滤器概念】【StrutsPrepareAndExecuteFilter 

过滤器API包括3个简单的接口:FilterFilterChainFilterConfig

Filter接口:

——init():容器实例化过滤器的时候调用。容器为这个方法传入FilterConfig,配置信息。

——doFilter():处理请求和响应请求。接受3个参数:ServletRequest,ServletResponse,FilterChain

        调用FilterChaindoFilter()方法。

设置ValueStack。获取ActionMapping

——destroy()方法。

 

转载于:https://www.cnblogs.com/lsx1993/p/4841520.html

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

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/170667.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 举例说明一下怎么算是第一范式、第二范式、第三范式?

    举例说明一下怎么算是第一范式、第二范式、第三范式?数据库的设计范式是数据库设计所需要满足的规范,满足这些规范的数据库是简洁的、结构明晰的,同时,不会发生插入(insert)、删除(delete)和更新(update)操作异常。反之则是乱七八糟,不仅给数据库的编程人员制造麻烦,而且面目可憎,可能存储了大量不需要的冗余信息。设计范式是不是很难懂呢?非也,大学教材上给我们一堆数学公式我们当然看不懂,也记不住。所以我们很多人就根本不按照范式来设计数据库。

  • python 中os模块os.path.exists()含义

    python 中os模块os.path.exists()含义os即operatingsystem(操作系统),Python的os模块封装了常见的文件和目录操作。os.path模块主要用于文件的属性获取,exists是“存在”的意思,所以顾名思义,os.path.exists()就是判断括号里的文件是否存在的意思,括号内的可以是文件路径。举个栗子:user.py为存在于当前目录的一个文件输入代码:importospath…

  • 软引用和弱引用的区别_强引用软引用弱引用虚引用的区别

    软引用和弱引用的区别_强引用软引用弱引用虚引用的区别示例代码:importjava.lang.ref.SoftReference;/***@authorchenjc*@since2020-01-13*/publicclassSoftReferenceTest{/***使用JVM参数-Xmx10m运行程序**@paramargs*@throwsI…

  • VMM复习手记

    VMM复习手记VMM复习手记(2011-03-2119:35:43)标签:杂谈分类:tech1.使用VMM的库文件:`include”vmm.sv”2.基类和派生类指针引用:例如classpacket;classpacket_newextendspacket;packetp;packet_n

  • shiro框架是什么_shiro+jwt

    shiro框架是什么_shiro+jwt1,什么是shiroApacheShiro是Java的一个安全框架。Shiro可以非常容易的开发出足够好的应用,其不仅可以用在JavaSE环境,也可以用在JavaEE环境。Shiro可以帮助我们完成:认证、授权、加密、会话管理、与Web集成、缓存等。2,为什么要学shiro1,既然shiro将安全认证相关的功能抽取出来组成一个框架,使用shiro就可以非常快速的完成…

  • Java编程——九九乘法表

    Java编程——九九乘法表使用Java语言实现九九乘法表的输出,这里利用的是for循环实现输出九九乘法表。最后输出使用的是print而不是println,注意两者的区别。简单来说,就是println在输出一个语句结束之后会自动换行,而print在输出一个语句结束之后不会自动换行。可根据代码的不同做出合适的调整,实现不同的输出结果。publicclassdemo7{publicstaticvoidmain(String[]args){for(inti=1;i<=9;i+

发表回复

您的电子邮箱地址不会被公开。

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