`
raymond.chen
  • 浏览: 1426033 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

struts2原理

 
阅读更多

一个Struts2请求处理的步骤大致如下: 

    1、客户端初始化一个指向Servlet容器(例如Tomcat)的请求

    2、这个请求经过一系列的过滤器(Filter)(这些过滤器中有一个叫做ActionContextCleanUp的可选过滤器,这个过滤器对于Struts2和其他框架的集成很有帮助,例如:SiteMesh Plugin) 

    3、接着FilterDispatcher被调用,FilterDispatcher询问ActionMapper来决定这个请是否需要调用某个Action 

       FilterDispatcher是控制器的核心,就是mvc中c控制层的核心。

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

    5、ActionProxy通过ConfigurationManager询问框架的配置文件,找到需要调用的Action类 ,这里,我们一般是从struts.xml配置中读取。

    6、ActionProxy创建一个ActionInvocation的实例。

    7、ActionInvocation实例使用命名模式来调用,在调用Action的过程前后,涉及到相关拦截器(Intercepter)的调用。

ActionInvocation是Xworks 中Action 调度的核心。而对Interceptor 的调度,也正是由ActionInvocation负责。ActionInvocation 是一个接口,而DefaultActionInvocation 则是Webwork 对ActionInvocation的默认实现。

 

Interceptor的调度流程大致如下:

1.ActionInvocation初始化时,根据配置,加载Action相关的所有Interceptor。

2. 通过ActionInvocation.invoke方法调用Action实现时,执行Interceptor。

Interceptor将很多功能从我们的Action中独立出来,大量减少了我们Action的代码,独立出来的行为具有很好的重用性。XWork、WebWork的许多功能都是有Interceptor实现,可以在配置文件中组装Action用到的Interceptor,它会按照你指定的顺序,在Action执行前后运行。

8、一旦Action执行完毕,ActionInvocation负责根据struts.xml中的配置找到对应的返回结果。返回结果通常是(但不总是,也可能是另外的一个Action链)一个需要被表示的JSP或者FreeMarker的模版。在表示的过程中可以使用Struts2 框架中继承的标签。

 



 

  • 大小: 63.9 KB
分享到:
评论

相关推荐

    struts2 原理 解析 图

    `struts原理.txt`文件可能包含了文字描述,进一步解释了Struts2的核心概念和机制,比如Action的配置、结果映射、拦截器的实现方式,以及Struts2如何整合其他技术,如Spring或Hibernate进行依赖注入和持久化操作。...

    struts2原理图

    struts2原理图

    struts1原理,struts2原理,spring mvc原理,struts1和struts2,struts和spring mvc

    **Struts2原理:** Struts2是在Struts1的基础上发展起来的,它融合了WebWork框架的许多特性。Struts2的核心是.struts2-struts.xml配置文件,它定义了Action和Result。请求到达时,由FilterDispatcher(或后来的...

    Struts1与Struts2原理 区别详解汇总

    Struts1与Struts2原理 区别详解汇总

    Struts2 原理及搭建

    下面我们将详细探讨Struts2的原理和搭建过程。 **Struts2原理** 1. **拦截器机制**:Struts2的核心特点之一是其拦截器链,它允许开发者插入自定义的处理逻辑在Action执行前后。拦截器可以用于权限验证、日志记录、...

    struts2原理分析 最新版 最全面

    struts2原理分析 最新版 最全面 易懂

    第02章 Struts2原理及配置

    第02章 Struts2原理及配置

    Struts2基本原理

    Struts 2框架本身大致可以分为3个部分:核心控制器FilterDispatcher、业务控制器Action和用户实现的企业业务逻辑组件。 核心控制器FilterDispatcher是Struts 2框架的基础,包含了框架内部的控制流程和处理机制。...

    深入理解struts2原理之自己实现struts2框架源码

    作为struts2的初学者,有时候理解struts框架的原理,网上看图会一头雾水,所以要是能自己体会实现struts框架的整个过程,对理解struts思路会更加清晰一些,这个源码就是自己实现的过程,代码有详细注释

    struts2 原理简介

    Struts2是一个流行的Java EE应用框架,它基于Model-View-Controller(MVC)设计模式,旨在简化企业级Web应用程序的开发。尽管Struts2被宣传为一个全新的框架,但其实它是从WebWork框架发展而来,继承了WebWork的特性...

    struts2工作原理

    struts2工作原理、请求响应流程。。。。。。。。。。。。。。。

    struts2原理经典

    在深入理解Struts2的工作原理之前,我们先了解一下基本概念。 **1. MVC模式** MVC模式是一种软件设计模式,将业务逻辑、数据和用户界面分离,使得开发更易于管理和维护。在Struts2中,Action对应Controller,负责...

    struts2 原理与实践

    在本文中,我们将深入探讨Struts2的原理和实践,以一个简单的登录示例来阐述其关键组件和工作流程。 首先,我们来看一下开发Struts2应用的基本步骤: 1. **定义视图(Views)**:视图通常由JSP页面组成,负责展示...

    Struts2的工作原理和流程

    2 这个请求经过一系列的过滤器(Filter)(这些过滤器中有一个叫做ActionContextCleanUp的可选过滤器,这个过滤器对于Struts2和其他框架的集成很有帮助,例如:SiteMesh Plugin) 3 接着FilterDispatcher被调用,...

    Struts2 工作原理 Struts2框架 有图

    Struts2 工作原理 Struts2框架 有图

    struts2的基础知识

    **Struts2原理** Struts2框架通过拦截器(Interceptor)机制实现了请求处理的流程控制。当一个请求到达时,Struts2的前端控制器(Front Controller)——StrutsPrepareAndExecuteFilter会拦截这个请求,然后按照配置...

    struts框架原理图

    struts 框架原理图 原理流程 跳转

    struts2工作原理图

    理解Struts2的工作原理是深入学习和有效利用该框架的关键。下面将详细介绍Struts2的工作流程。 1. **请求接收**:当用户在浏览器中提交一个HTTP请求时,这个请求首先会被Web服务器(如Apache Tomcat)接收到。如果...

    Struts2 技术内幕——深入解析Struts2架构设计与实现原理.pdf

    《Struts2技术内幕:深入解析Struts2架构设计与实现原理》以Struts2的源代码为依托,通过对Struts2的源代码的全面剖析深入探讨了Struts2的架构设计、实现原理、设计理念与设计哲学,对从宏观上和微观上去了解Struts2...

    struts运行原理图

    韩顺平老师讲的Struts运行原理,自己画的图,有需要可以参考下

Global site tag (gtag.js) - Google Analytics