struts工作原理

来源:互联网 发布:mysql 替换 编辑:程序博客网 时间:2024/04/28 09:06

struts2工作原理

编程原理:

       1.户请求发送http请求

       2.web服务器,tomcat

       3.加载web.xml,(web部署描述文件)

       4.执行struts核心控制器(StrutsPreparedAndExecuteFilter)或者filterDispatcher,

       5.加载struts.xml文件,通过请求action名字找到匹配的action

       6.在action中调用(execute)(业务层的|数据层)

       7.执行result

       8.通过result找到struts.xml与resul名字匹配结果

       9.转发到页面返回给调用者


内部原理:

struts2工作原理 - cjzhy0668 - 碧水蓝天的博客


1、用户发送http请求,web服务器加载web.xml

2、执行过滤器

      ActionContextCleanUp  :消除页面中的属性

      Other Filters (sitemesh  文件模板),

     FiterDispatcher 核心过滤器

3、中央过滤器询问ActionMapper是否需要请求action,http的请求分为两种,一种是action,一种是请求静态资源,如果是静态资源就直接转到response

4、如果需要请求action,则FilterDispatcher就会调用ActionProxy,然后就会去struts的配置文件中读取相对应的action

5、 ActionProxy会调用Configuration Manager读取strus.xml配置文件
           注意:只加载一次  
       根据请求名字,ActionProxy(action代理)调用 所有拦截器(Inertceptor),ActionProxy(action代理) 创建Action Invocation,去执行所对应action类, 根据Action类中名字找到匹配     result页面  (jsp、freeMarker、Velocity)等技术,在此执行拦截器
        注意:struts2拦截器和servlet过滤器功能相同, 并比filter强大 拦截器执行顺序:先进后出

        (6)相应给用户(HttpServletResponse)



0 0
原创粉丝点击