-  一个请求过来,走前端控制器StrutsPrepareAndExecuteFilter
        -前端控制器是一个过滤器,过滤器中的核心方法是doFilter(),doFilter方法中首先处理了字符集,然后将request和response方法 放到ThreadLocal中
        ,表示线程安全
        -接下来,判断是否是一个action请求,如果是.action结尾的,那么继续走struts的流程;否则跳转视图
        -判断ActionMapping对象是否为空,如果为空,跳转视图;否则继续走流程
        -创建ActionProxy对象,在创建ActionProxy,创建了一个struts的核心对象ActionInvocation,ActionInvocation贯穿了struts的执行流程
        ,因为代理、目标、拦截器、结果都在ActionInvocation的实例变量位置上
        -代理对象调用ActionInvocation的初始化方法init方法,在这个方法中,创建真正的目标action。在创建目标对象的时候,使用的是struts2提供的
            对象工厂ObjectFactory,将创建好的action复制给ActionInvocation的成员变量
        -取得20的默认的拦截器,放到ActionInvocation对象的迭代器上
        -调用actionProxy对象的execute方法
        -ActionInvocation上的invoke会被调用
        -调用20个拦截器,拦截器执行完毕后,会调用目标对象的execute方法
        -目标对象的execute方法执行结束后,返回字符串,根据这个字符串,struts2的ObjectFactory对象会创建一个result对象,result对象指向具体视图
        -拦截器出栈,Response响应给客户端

最新文章

  1. BigInteger和BigDecimal大数操作
  2. [高斯消元] POJ 2345 Central heating
  3. The 2015 China Collegiate Programming Contest A. Secrete Master Plan hdu5540
  4. Go语言实现HashSet
  5. Android 文件访问权限的四种模式
  6. Swing应用开发实战系列之二:设计日期选择面板窗口
  7. UESTC 1854
  8. java工程开发之图形化界面之(第一课)
  9. 线段树区间更新操作及Lazy思想(详解)
  10. C#和NewSQL更配 —— CockroachDB入门(可能是C#下的全网首发)
  11. 第二周工作总结——NWNU李泓毅
  12. 专注笔试算法20年(C语言版)
  13. 面试必问:Spring循环依赖的三种方式
  14. 通过js去掉所有的html标签,得到HTML标签中的所有内容
  15. OpenWrt超时检测
  16. poj 2287(贪心)
  17. 转载 eclipse中的include设置
  18. 【数据库】 SQL 常用语句之系统语法
  19. 基于JDK1.7.0_80与JDK1.8.0_66做的分析
  20. socket中close发生的事情,RST,pipe信号错误

热门文章

  1. Android高亮TextView
  2. 初次尝试PHP——一个简单的对数据库操作的增删改查例子
  3. 浅谈ByteBuffer转换成byte[]时遇到的问题
  4. 省市区县的sql语句——省
  5. WEB笔记-让HTML5向下兼容的策略
  6. 设置Hadoop的 dataNode的单个Map的内存配置
  7. JAVA软件工程师应该具备的技能有哪些?
  8. 使用Reporting Services时遇到的小问题
  9. C++调用Matlab函数求特征值
  10. 【转载】JSTL 标签大全详解