您的位置:首页 > 编程语言 > Java开发

struts2工作原理

2014-08-19 15:02 399 查看
这个东东去面试java web方向的是经常问,其实,个人觉得没必要深究它的原理,会用就行了,但是没办法,想在面试官面前表现一下,背也得背出来!

其实也不是每个公司都在用struts2 的来这个公司就没用过,不过也不怎么做java了,但是还是把以前网上找到的先留下,万一以后用到呢。

 

1。struts2工作原理

  (a)用户发送http(httpServletRequest)请求,请求web服务器(Tomcat),web服务器加载web部署描述文件(web.xml),执行过滤器

  ActionContextCleanUp,Other filters,filterDispatcher等等 ActionContextCleanUp:需要与装饰器(siteMesh)插件一起使用,作用:使用装饰器插件,struts2中Action不再管理Action中属性,使用ActionContextCleanUp来清理Action中属性other filters:其他过滤器(siteMesh)filterDispatcher:struts2核心控制器

  注意:过滤器执行是有顺序(同图),值栈在filterDispatcher中创建

  (b)filterDispatcher询问ActionMapper是否请求Action,如果不请求Action,就不再实行struts2容器,否则filterDispatcher会调用ActionProxy,ActionProxy通过配置文件管理器(Configuraction Manager)加载struts.xml 配置文件,找到相应Action

   (c)ActionProxy会创建Action Invocation对象先执行struts2中相应的拦截器,在行所请求Action

    (d)Action Invocation执行Result找到分发页面

    (e)(反向)执行struts2中拦截器或拦截器栈

    (f) 响应(HttpServletResponse)给客户端

   

 struts2优势:

          与Servlet API(Servlet容器)解耦

            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: