首页 > 代码库 > 【Struts2】★☆之struts2的处理流程和对Action的管理方式
【Struts2】★☆之struts2的处理流程和对Action的管理方式
【Struts2】★☆之struts2的处理流程和对Action的管理方式
首先我们先来看一张我画的草图,如下:
接下来,是一个web.xml配置文件的常用代码
<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>
ok,
StrutsPrepareAndExecuteFilter
是Struts2核心控制器,它只负责拦截由<url-pattern>/*</url-pattern>指定的所有用户的请求
当用户请求到达时,系统会根据web.xml中配置Filter过滤用户的请求,默认情况下,如果用户的访问路径不带有后缀或者是以.action的后缀作为结尾,
这时候请求会转发给Struts2框架处理,否则Struts2会滤过这个请求处理,当请求转入Struts2框架时会先经过一系列的拦截器,然后再到Action。
与Struts1不同的是,Struts2会对每个请求都会产生一个Action,所以Struts2是线程安全的,属于原型设计模式。
Struts1中的Action创建出来之后会放在缓冲中,属于单例设计模式,在应用生命周期之内只会存在一个Action。
在面试过程中,经常有面试官会问到struts2和struts1之间的Action的管理会有什么区别?如上!
本文出自 “诺言永远依恋小柴、、、” 博客,请务必保留此出处http://1936625305.blog.51cto.com/6410597/1440453
【Struts2】★☆之struts2的处理流程和对Action的管理方式
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。