码迷,mamicode.com
首页 > 其他好文 > 详细

struts2的工作流程和运行原理

时间:2015-08-15 18:23:09      阅读:143      评论:0      收藏:0      [点我收藏+]

标签:struts2

        先要参考srtuts的官方给出的图:

技术分享

工作原理:

                 1.(ActionContextCleanUp )首先客户端会发送一个请求,然后我们在web.xml配置中有一个strurts2的过滤器,在进入过滤器时,有这个ActionContextCleanUp filter进行处理,(因为struts2在开发中,容易引起众多类集合,而这些类集合并不能在使用完后全部消除,所以apache基金会为了让struts2在运行的过程中能够稳定,就特定的为所有ACTION进行监控,从而让struts2在第一时间知道被废弃的对象,从而使用ActioncontextCleanUp对象中进行销毁,但这里的销毁也是告诉JVM某个对象需要被销毁。)

                  2.(otherfilters)下面进入其他用户配置或者自定义的flter,执行过滤器链。

                  3.(flterDispather)核心filter(即flterDispather),它的作用是读取发送过来的请求与actionMapper中的action集合进行匹配是否有这个action,如果匹配到后就进入下一步,没有匹配到就执行失败。

                  4.(actionproxy)action代理类,在前面的核心控制器匹配到action后从配置读取器读取到的配置信息(是哪个类)生成指定的相应action类的实例。

                  5.代理类在ActionInvocation这个类中作为一个引用,然后在ActionInvocation这个类中有拦截器(拦截器有配置的)的集合,这个类中的invoke方法里去遍历拦截器,拦截器的intecept方法同时会传入一个ActionInvocation的自身的引用继续执行invoke方法继续执行拦截器。

                  6.执行完拦截器后就会执行action代理的excecute方法(如果配置了method就执行配置的方法),如果执行完这个后还有其他的拦截器则继续执行intecept后面的方法,再将响应回给客户端。



               http://download.csdn.net/detail/u010214269/9009187   


              链接是自定义实现的struts.



版权声明:本文为博主原创文章,未经博主允许不得转载。

struts2的工作流程和运行原理

标签:struts2

原文地址:http://blog.csdn.net/u010214269/article/details/47682453

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!