Struts运行流程分析与声明式验证
Posted 两岸猿_吴轻舟先生
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Struts运行流程分析与声明式验证相关的知识,希望对你有一定的参考价值。
strust2运行流程分析
1.发送一个HttpServletRequest给StrutsPrepareAndExecuteFilter
2.StrutsPrepareAndExecuteFilter询问ActionMapper:该请求是否是一个Struts2请求(即是否返回一个非空的ActionMapping对象)
3.若ActionMapper认为该请求是一个Struts2请求,则StrutsPrepareAndExecuteFilter把请求的处理交给ActionProxy
4.ActionProxy通过ConfigurationManager询问框架的配置文件,确定需要调用的Action类及Action方法。
5.ActionProxy创建一个ActionInvocation的实例,并进行初始化。
6.ActionInvocation实例在调用Action的过程前后,涉及到相关拦截器(Interceptor)的调用。
7.Action执行完毕,ActionInvocation负责根据struts.xml中的配置找到对应的返回结果。调用结果的execute方法,渲染结果。在渲染过程中可以使用Struts2框架中的标签。
8.执行各个拦截器invocation.invoke()之后的代码。
9.把结果发送到客户端。
2.StrutsPrepareAndExecuteFilter询问ActionMapper:该请求是否是一个Struts2请求(即是否返回一个非空的ActionMapping对象)
3.若ActionMapper认为该请求是一个Struts2请求,则StrutsPrepareAndExecuteFilter把请求的处理交给ActionProxy
4.ActionProxy通过ConfigurationManager询问框架的配置文件,确定需要调用的Action类及Action方法。
5.ActionProxy创建一个ActionInvocation的实例,并进行初始化。
6.ActionInvocation实例在调用Action的过程前后,涉及到相关拦截器(Interceptor)的调用。
7.Action执行完毕,ActionInvocation负责根据struts.xml中的配置找到对应的返回结果。调用结果的execute方法,渲染结果。在渲染过程中可以使用Struts2框架中的标签。
8.执行各个拦截器invocation.invoke()之后的代码。
9.把结果发送到客户端。
以上是关于Struts运行流程分析与声明式验证的主要内容,如果未能解决你的问题,请参考以下文章
[原创]java WEB学习笔记70:Struts2 学习之路-- 输入验证,声明式验证,声明是验证原理
Strust2中,加入监听器来判断用户是否在session中存在。
Strut2的配置文件strust.xml报错:Package Action extends undefined package struts-default