- 浏览: 286968 次
- 性别:
- 来自: 深圳
文章分类
最新评论
-
cheetah_ysc:
不错不错,我喜欢!
Java固定时间间隔执行 -
voyage_mh:
阿选百度竟然一下可以吧你百度出来
使用DWR注解Annotation
Struts2 的基本工作流程
Struts2框架是由3个本分组成:
-
核心控制器FilterDispatcher
-
业务控制器
-
用户实现的业务逻辑组件
下面来分别介绍这3个部分:
-
核心控制器FilterDistpatcher, 负责拦截所有的用户请求,是作为一个Filter运行在Web应用中,在web.xml中配置。 当用户请求到达时,该Filter会过滤用户的请求,请求要是以action结尾,该请求就会被转到Struts2框架来处理。
-
Struts2处理请求的action的时候,会到sturts.xml中去找相应的Action实例,其实并不是用户实现的Action实例,而是一个Action的代理——因为用户实现的业务控制器没有直接和Servlet API相关连,是无法处理用户请求的。所以在这里,Struts2使用了AOP技术,动态代理来定义一些拦截器,这些拦截器负责将HttpServletRequest请求中的参数解析出来,传到Action中,并回调Action实例中的execute方法来处理用户的请求。
-
用户自己实现的业务逻辑组件,只是一个代理目标,它包含了对用户请求的处理。用户请求的参数还是包含在HttpServletRequest对象里,而用户自己定义的Action类是不能直接反问HttpServletRequest对象的。拦截器会负责将HttpServletRequest里的请求的数据解析出来,交给用户实现的业务逻辑组件。
知道了上面的原理,接下来就好办了。例如 模型驱动的实现原理就清楚多了(这里只是我自己的理解)
-
首先,要使用模型驱动,就要在Action的类中实现ModelDriven接口,实现ModelDriven接口就必须要实现getModel的方法
-
接下来,就要看struts-default.xml的配置,里面有许多的拦截器,在驱动这一块有属性驱动的拦截器,还有模型 驱动的拦截器,属性拦截器为params,模型驱动的拦截器为modelDriven,而ModelDriven拦截器就负责将参数传刚模型的属性。其他的都和上面的一样,只不过多执行了个ModelDriven拦截器的处理而已而已。
发表评论
-
Struts2类型转换
2010-12-17 14:46 13541.自定义类型转换器 第一步:编写自定义的转换器类 ... -
Strut2使用拦截器过滤权限问题
2010-10-18 19:27 1296JSP请求(login.jsp) <%@ page ... -
Strrts2基于Annotation的输入验证
2010-10-18 17:35 1165客户端jsp请求Action代码 <%@ page ... -
Struts2异常处理
2010-10-18 12:28 1320异常映射分为两种:局部异常映射,全局异常映射。局部异常映射会 ... -
Struts2向结果传参数
2010-10-15 11:43 1909JSP请求页面(传参) &l ... -
Struts2动态指定结果
2010-10-14 22:32 1255Jsp反问页面 <%@ page language= ... -
Strut2中Action的Result类型
2010-10-14 22:16 1597type="dispatcher" 只是跳 ... -
Web中request,session,application的获取(1)
2010-10-14 17:51 1109jsp请求 <%@ page language=&q ... -
文件下载(struts2 Action)
2010-10-10 11:34 1718客户端jsp请求Actin <%@ page lan ... -
文件下载(超链接)
2010-10-10 11:09 1086文件下载有时候很简单,直接通过一个超链接就可以实现文件下载(注 ... -
Struts2多文件上传
2010-10-10 00:03 895可以是数组也可以是list和map jsp请求代码 A ... -
Struts2上传文件通过配置文件实现文件过滤
2010-10-09 18:07 3247客户端端jsp请求 <%@ page content ... -
Struts2上传文件手动实现文件过滤
2010-10-09 17:10 2892在实现了上传的功能的情况下,再加一点点代码就可以实现手动文件 ... -
Struts2上传文件(2)
2010-10-09 14:08 838html请求 Action处理(和前面那个上传基本一样 ... -
Struts2上传文件
2010-10-09 13:31 1073struts上传需要的jar包 ... -
Action基本的验证(校验规则文件)
2010-10-06 10:47 979客户端jsp请求 <%@ page language= ... -
Action基本的验证
2010-10-06 10:12 800JSP请求 <%@ page language=&qu ... -
使用action属性接收参数,中文问题
2010-10-05 16:08 1135客户端JSP请求(这里可 ... -
使用模型驱动来接收参数
2010-10-05 16:02 1753一个简单的javaBean来封装将要请求的参数可以是VO,属性 ... -
使用域模型接收参数并封装
2010-10-05 15:57 946JSP请求代码,传了参数 <%@ page langu ...
相关推荐
Struts2的设计理念和工作流程与WebWork框架相似,可以认为Struts2是对WebWork的升级和扩展,吸收了WebWork的优点,同时改进了Struts1的一些不足,如更简洁的配置和更强大的动作映射。 8. **集成其他框架**: ...
本文将深入探讨Struts1的基本原理,帮助理解其架构设计和工作流程。 **1. MVC架构** MVC模式是软件工程中一种用于分离业务逻辑、数据和用户界面的设计模式。在Struts1中,Model代表应用程序的数据和业务逻辑,View...
总的来说,这个“struts2_basic_lib”压缩包是Struts2开发的基石,提供了构建web应用所需的全部基本组件。开发者可以通过深入学习这些库的功能和使用方式,掌握Struts2框架的核心原理,从而有效地开发出高效、可维护...
本教程旨在深入讲解Struts2的基本原理及其在实际开发中的应用。 一、Struts2基本原理 1. **Action和Result**:在Struts2中,业务逻辑主要由Action类执行,Action类是处理用户请求的核心组件。每个Action对应一个...
在深入理解Struts的工作原理之前,我们先来简单回顾一下MVC模式的基本概念: **Model(模型)**:这是应用程序的核心业务逻辑,通常由Java Beans或Enterprise JavaBeans (EJBs)实现,它们处理数据和业务规则。 **...
Struts2是一个基于MVC(Model-View-Controller)设计模式的Java Web框架,它极大地简化了构建基于Java的企业级应用程序的...通过理解和实践这些基本原理,你可以更好地掌握Struts2框架,从而高效地开发Java Web应用。
### Struts2工作原理深度解析 #### 引言 Struts2框架,作为Java Web开发领域的一款重要工具,其设计理念源自于WebWork框架,并融合了Struts1的优点,旨在提供更为强大、灵活的MVC(Model-View-Controller)架构...
Struts1 工作原理浅析 一、Struts1 工作原理概述 Struts1 是一个基于 MVC 模式的 Web 应用框架,它的工作原理可以分为三个部分:Model、View 和 Controller。Model 负责处理业务逻辑,View 负责表现层,Controller...
Struts2 工作原理及拦截器和过滤器 Struts2 框架的工作原理可以分为以下几个步骤: 1. 客户端发出一个指向 Servlet 容器的请求(Tomcat); 2. 这个请求会经过几个过滤器,最后会到达 FilterDispatcher 过滤器。...
Struts2是一个强大的Java web应用程序框架,用于...通过分析源代码,可以深入理解Struts2的工作原理、配置机制以及MVC模式在实际项目中的应用。对于初学者,这是一个很好的实践平台,能帮助他们掌握Web开发的基本技能。
标题:Struts运行基本原理(详细) 在深入探讨Struts框架的基本运行原理之前,我们首先应当明确Struts作为一款开源的MVC(Model-View-Controller)架构模式的实现,其核心价值在于将Web应用程序的业务逻辑、数据...
这个“Struts2接口文档”是开发者的重要参考资料,提供了关于Struts2框架内各个组件、类库以及接口的详细说明,帮助开发者深入理解框架的内部工作原理并有效地使用其功能。 Struts2的核心组件包括Action、Result、...
Struts2是一个强大的Java web应用程序框架,用于构建和部署企业级的MVC(Model-View-Controller)架构的Web应用。...通过分析和运行这个项目,可以深入理解Struts2的工作原理及其在实际应用中的运用。
- **Hello Struts2**:通过创建一个简单的“Hello World”示例,帮助开发者快速上手Struts2的基本配置和运行流程。 - **Action类详解**:Action类是Struts2的核心组件之一,负责处理用户的请求并返回相应的结果。...
Struts1是Apache组织开发的一个基于MVC(Model-View-Controller)设计模式的Web应用框架,它简化了开发...实际开发中,虽然Struts1已经被Struts2和其他现代框架取代,但了解其工作原理对理解和使用其他框架仍然有裨益。
这个“struts2简单例子”是初学者理解Struts2工作原理和核心概念的一个很好的起点。让我们深入探讨一下Struts2的基础知识。 1. **MVC架构**: MVC模式是软件设计中的一个经典模式,它将应用逻辑分为三个主要部分:...
**Struts基本原理** 1. **MVC模式**:在Struts中,模型(Model)通常由业务逻辑组件(如JavaBeans或EJBs)组成,负责处理数据;视图(View)是用户界面,通常由JSP页面实现;控制器(Controller)则是Struts的核心...
本文将深入探讨Struts2的入门实例、工作原理及其主要组件。 首先,让我们从一个简单的Struts2入门实例开始。创建一个基本的Struts2应用通常包括以下几个步骤: 1. 引入Struts2的依赖库到项目中,这通常通过Maven或...
通过这个视频教程,你将能够深入理解Struts2的基本原理和用法,学会如何利用Struts2构建一个简单的Web应用。同时,掌握Struts2的开发环境搭建,有助于你在实际项目中快速上手。传智播客的教程以通俗易懂的方式讲解,...
Struts2是一个强大的Java web应用程序框架,用于构建和管理MVC(模型-视图-控制器)架构的应用程序。这个“Struts2的视频学习代码”资料可能是...通过学习这部分代码,开发者能够初步掌握Struts2的基本操作和工作原理。