`
arne3166
  • 浏览: 131177 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

Struts2 ——3、Struts2的大致处理流程

阅读更多

写了一些例子,基本上对于Struts2应用的开发可以有个大概的了解,那么下面可以针对这些应用总结一下Struts的处理流程了。

 

一个请求在Struts2框架中的处理大概分为以下几个步骤:
1、客户端初始化一个指向Servlet容器(例如Tomcat)的请求;
2、这个请求经过一系列的过滤器(Filter)(这些过滤器中有一个叫做ActionContextCleanUp的可选过滤器,这个过滤器对于Struts2和其他框架的集成很有帮助,例如:SiteMesh Plugin);
3、接着FilterDispatcher被调用,FilterDispatcher询问ActionMapper来决定这个请求是否需要调用某个Action;
4、如果ActionMapper决定需要调用某个Action,FilterDispatcher把请求的处理交给ActionProxy;
5、ActionProxy通过Configuration Manager询问框架的配置文件,找到需要调用的Action类;
6、ActionProxy创建一个ActionInvocation的实例。
7、ActionInvocation实例使用命名模式来调用,在调用Action的过程前后,涉及到相关拦截器(Intercepter)的调用。
8、一旦Action执行完毕,ActionInvocation负责根据struts.xml中的配置找到对应的返回结果。返回结果通常是(但不总是,也可能是另外的一个Action链)一个需要被表示的JSP或者FreeMarker的模版。在表示的过程中可以使用Struts2 框架中继承的标签。在这个过程中需要涉及到ActionMapper。

当然这里的内容还并不是都已经接触到了,先了解一下,待后面用到的时候再回头看一眼,就明了了。

这里先简单得带过,后面会补充起来...最近的目标是尽快将这个Struts的各个点都涉及一遍,然后慢慢补充里面不完善的地方。浅薄之处还请谅解,如果意见和建议,尽请提出来。

1
1
分享到:
评论

相关推荐

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

    要深入学习和掌握Struts2,建议阅读官方文档,参与实际项目实践,也可以参考相关的技术书籍和教程,例如《Struts2技术内幕——深入解析Struts2架构设计与实现原理》等资源,来提升对Struts2框架的全面理解。

    <<项目架构那点儿事>>——浅析web层struts2的构建

    《项目架构那点儿事》——浅析Web层Struts2的构建 在Web开发领域,Struts2作为一款流行的MVC框架,为开发者提供了高效、灵活的架构支持。本篇文章将深入探讨Struts2在Web层的构建过程,通过分析提供的文件名,我们...

    小型论坛的开发(适合上课实验或新手了解Struts2+Hibernate)

    本项目——"小型论坛的开发",利用了两种流行且强大的Java Web框架:Struts2和Hibernate,旨在为初学者提供一个实践平台,加深对这两种框架的理解。以下将详细介绍这两个框架以及它们在项目中的应用。 **Struts2...

    struts2+hibernate+Mysql开发图书管理系统

    本系统采用经典的Java Web开发框架——Struts2、持久层框架Hibernate以及关系型数据库MySQL,构建了一个功能完备、易于维护的图书管理系统。下面将详细阐述这三个核心技术在系统中的应用。 首先,Struts2作为Action...

    struts2HelloWorld

    5. **部署描述符(web.xml)**:尽管不是Struts2特有的,但`web.xml`文件通常会配置一个过滤器来启动Struts2的前端控制器(`StrutsPrepareAndExecuteFilter`),以便处理所有请求。 执行此示例的过程大致如下: 1. ...

    struts2校验器与校验框架精彩学习笔记

    Struts2作为一款流行的Java Web开发框架,其在处理用户输入和数据验证方面扮演着重要角色。本学习笔记主要探讨了Struts2中的校验器(Validator)和校验框架,帮助开发者理解如何有效地实现数据验证,确保应用程序的...

    Java实训教程 Java软件开发实战 Java开发框架介绍 struts2_5_标签 共113页.pptx

    相较于Struts1,Struts2提供了更为强大的功能和更加灵活的设计模式,支持多种表现层技术,并且集成了强大的表达式语言——OGNL(Object-Graph Navigation Language),使得开发者能够更高效地进行Web应用开发。...

    struts2环境搭建及国际化

    ### Struts2环境搭建及国际化知识点详解 #### 一、Struts2简介与环境搭建 **1.1 Struts2框架概述** Struts2是由Apache软件基金会提供的一个开源的MVC框架,它继承了Struts1的设计理念,并进行了大量的改进和优化...

    韩顺平struts视频第一个Demo(简单登录验证)

    Struts框架的工作流程大致如下: 1. 用户通过浏览器发送HTTP请求到服务器。 2. Struts的前端控制器(通常为`StrutsServlet`)捕获请求。 3. 请求被映射到相应的Action配置(在struts-config.xml文件中定义)。 4. ...

    用Struts建立MVC应用的介绍.doc

    Struts的处理流程大致如下: 1. 用户发送请求至服务器。 2. ActionServlet接收到请求,根据请求URL查找对应的ActionMapping。 3. ActionServlet根据ActionMapping调用相应的Action。 4. Action处理业务逻辑,可能...

    SSH2项目的小demo

    SSH2项目的小demo是基于Java Web开发中的经典组合——Struts2、Spring和Hibernate三大框架的一个实例展示。这个项目旨在帮助开发者理解如何整合这三个框架,搭建一个完整的开发环境,并掌握其核心操作流程。 首先,...

    中国移动业务管理系统struts_spring_hibernate.rar

    中国移动业务管理系统是一个典型的大型企业级应用,其设计和实现采用了经典的Java EE技术栈——Struts、Spring和Hibernate,这三者构成了MVC(Model-View-Controller)架构的基础。本篇文章将详细探讨这三个框架在...

    js2struts-开源

    JS2Struts的工作流程大致如下:在客户端,JavaScript代码创建请求对象,设置Action名称、参数等信息,然后通过JS2Struts库发送到服务器。服务器接收到请求后,Struts框架会根据配置解析请求,调用相应的Action执行...

    ssh项目实例

    在实际开发中,SSH项目的流程大致如下: 1. 用户在浏览器中发送请求到服务器。 2. Struts2拦截请求,根据struts.xml配置找到对应的动作类。 3. 动作类执行,调用Spring管理的Service进行业务逻辑处理。 4. Service层...

    简易学生管理系统

    《简易学生管理系统——基于Struts与Hibernate的实现》 简易学生管理系统是一款专为初学者设计的教育软件,它集成了基础的学生信息管理功能,包括添加、删除、修改学生信息等操作,非常适合编程初学者作为入门项目...

    图书管理系统源码

    在JS和Struts的配合下,图书管理系统的运行流程大致如下:用户在前端界面上进行操作,如输入查询条件,JS负责收集这些数据并发送到服务器;Struts框架接收到请求后,根据配置的Action映射找到对应的处理方法,执行...

    java作业2 影院在线订票

    Java作业2——影院在线订票系统是一个基于JSP和MySQL技术构建的简易应用程序,主要用于学习和实践Java Web开发。在这个项目中,学生被要求设计一个能够实现用户在线选座、购票以及管理数据库的系统,虽然它可能没有...

    j2ee编写的当当网

    2. **控制器层**:可能采用Struts或Spring MVC作为请求分发器,处理用户的HTTP请求,调用相应的服务方法。 3. **业务逻辑层**:这部分代码处理业务规则,如用户登录验证、添加商品到购物车、生成订单等。这些逻辑...

    SWFUPLOAD批量上传组件

    关于标签,"struts"是一个基于MVC设计模式的Java Web框架,常用于构建企业级应用。"swf"代表了 ShockWave Flash,是Adobe开发的用于创建互动式多媒体内容的平台,SWFUpload就是利用了这个技术。"上传"则直接关联到...

    毕业论文jsp1122游戏装备交易系统ssh html5.doc

    1. **SSH框架**:SSH是Java Web开发中常见的开源框架组合,由Struts提供MVC设计模式,Spring处理依赖注入和事务管理,Hibernate则负责对象关系映射,三者协同工作,简化了开发过程,提高了代码的可维护性和可扩展性...

Global site tag (gtag.js) - Google Analytics