Struts2基础知识

来源:互联网 发布:虎牙直播for mac 编辑:程序博客网 时间:2024/06/06 16:32

Struts2基础知识

Struts2是java web开发中最经典的MVP框架技术。

Stuts2MVC:

MVC将一个应用的输入、处理和输出流程按照模型、视图和控制器进行了分离,这样一个应用就可以分成三层:模型层、视图层和控制器层。传统的MVC模型如下图:
这里写图片描述

Stuts2工作原理:

Suruts2的工作原理可以用下面这张图来描述,下面我们分步骤介绍一下每一步的核心内容
Stuts2工作原理

一个请求在Struts2框架中的处理大概分为以下几个步骤

  • 1、客户端初始化一个指向Servlet容器(例如Tomcat)的请求
  • 2、这个请求经过一系列的过滤器(Filter)(这些过滤器中有一个叫做ActionContextCleanUp的可选过滤器,这个过滤器对于Struts2和其他框架的集成很有帮助,例如:SiteMesh Plugin)
  • 3、接着FilterDispatcher被调用,FilterDispatcher询问ActionMapper来决定这个请是否需要调用某个Action

    (FilterDispatcher是控制器的核心,就是mvc中c控制层的核心。下面粗略的分析下我理解的FilterDispatcher工作流程和原理:FilterDispatcher进行初始化并启用核心doFilter)

  • 4、如果ActionMapper决定需要调用某个Action,FilterDispatcher把请求的处理交给ActionProxy

  • 5、ActionProxy通过ConfigurationManager询问框架的配置文件,找到需要调用的Action类 ,这里,我们一般是从struts.xml配置中读取。
  • 6、ActionProxy创建一个ActionInvocation的实例。
  • 7、ActionInvocation实例使用命名模式来调用,在调用Action的过程前后,涉及到相关拦截器(Intercepter)的调用。
1 0
原创粉丝点击