- 浏览: 44012 次
文章分类
- 全部博客 (29)
- java (29)
- ava框架数据库连接池比较(c3p0 (1)
- dbcp和proxool)bonecp (1)
- 并发编程的Java抽象 (1)
- Comparing PHP Frameworks ( Symfony (1)
- CakePHP (1)
- YII and CodeIgniter) (1)
- 简单的Unit Test理解 (1)
- mysql concat函数 字符串连接 (1)
- PHP学习笔记(一) (1)
- Struts2 工作流程 (1)
- 关于Java性能监控您不知道的5件事 (1)
- paypal注册难吗? (1)
- Android采用SharedPreferences保存用户登录信息 (1)
- 开微博 (1)
- 《疯狂的程序员》 (1)
- FindBugs无法使用的问题 (1)
- 将SVG文件嵌入到网页中的问题 并说object和embed标记 (1)
- 突然想说说IP地址欺骗 (1)
- 把.NET程序部署到没有安装.NET Framwork的机器上 (1)
- 写个小程序QQMessage 熟悉一下界面控件的使用 (1)
- 看流程图,写代码。 (1)
- ASP.NET MVC 2生成动态表单的一种最简单的思路 (1)
- 一网络能连接后提示用户的小程序 (1)
- 重载运算符之前++和后++ (1)
- Spring JMS 整合Tomcat和ActiveMQ (1)
- android Launch Mode and Flags (1)
- PPT打包成EXE常用方法 (1)
- Android开发之初识Camera图像采集 (1)
- Android开发之自定义动画 (1)
- Multiple operations have reported errors Select an error to view its details (1)
- Hadoop启动时出现Unrecognized option: -jvm 和 Could not create the Java virtual machine (1)
- pjhjava soap的开发 (1)
最新评论
-
wolf_awp:
受不了啊,这种东西都能到首页去。
看流程图,写代码。 -
depravedangel:
原帖:http://blog.csdn.net/arui319 ...
写个小程序QQMessage 熟悉一下界面控件的使用 -
depravedangel:
05年的帖子,直接拷贝过来,LZ不厚道
写个小程序QQMessage 熟悉一下界面控件的使用 -
depravedangel:
判断QQ是否隐身是怎么做的的?
写个小程序QQMessage 熟悉一下界面控件的使用
一个请求在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
在上述过程中所有的对象(Action,Results,Interceptors,等)都是通过ObjectFactory来创建的。
注意:
相关的2个配置文件:
web.xml(配置了一个过滤器,处理的类是org.apache.struts2.dispatcher.FilterDispatcher)
struts.xml
--Struts 2 用于处理用户请求的 Action实例,并不是用户实现的业务控制器,而是 Action代理——因为用户实现的业务控制器并没有和 Servlet API耦合,显然无法处理用户请求。
而 Struts 2 框架提供了系列拦截器,该系列拦截器负责将 HttpServletRequest 请求中的请求参数解析出来,传入到 Action 中,并回调 Action 的 execute方法来处理用户请求。
发表评论
-
pjhjava soap的开发
2012-02-07 16:50 938soap 的开发其实是wsdl到java的一个开发过程 ... -
Hadoop启动时出现Unrecognized option: -jvm 和 Could not create the Java virtual machine
2012-02-07 13:34 5480http://javoft.net/2011/06/h ... -
Multiple operations have reported errors Select an error to view its details
2012-01-31 16:53 1762<div id="blog_content&q ... -
Android开发之自定义动画
2012-01-11 16:54 2545<h1>Android开发之自定义动画&l ... -
Android开发之初识Camera图像采集
2012-01-11 15:39 3973<h1>Android开发之初识Camer ... -
PPT打包成EXE常用方法
2011-12-28 13:18 959<span style="fon ... -
android Launch Mode and Flags
2011-12-28 11:44 760android:allowTaskReparen ... -
Spring JMS 整合Tomcat和ActiveMQ
2011-12-21 14:34 22891.Active MQ安装配置 1.1.下载并解压A ... -
重载运算符之前++和后++
2011-12-21 10:19 1179<span style="font-f ... -
一网络能连接后提示用户的小程序
2011-12-20 11:59 796国庆节放假期间整个小区断网4天,家里没办法上网,基本都 ... -
ASP.NET MVC 2生成动态表单的一种最简单的思路
2011-12-20 11:14 1027在BPM、OA等系统中,都会存在一个表单设计器。有些 ... -
看流程图,写代码。
2011-12-19 12:59 2302看流程图,写代码。<br><br&g ... -
写个小程序QQMessage 熟悉一下界面控件的使用
2011-12-15 16:14 1404首先,代表我个人祝所有看到此日志的朋友新年快乐!! ... -
把.NET程序部署到没有安装.NET Framwork的机器上
2011-12-15 13:04 897<div class="text1&q ... -
突然想说说IP地址欺骗
2011-12-15 12:04 717<font size="3" ... -
将SVG文件嵌入到网页中的问题 并说object和embed标记
2011-12-14 14:44 1430<p class="MsoNormal ... -
FindBugs无法使用的问题
2011-12-13 11:44 1700<p class="MsoNorma ... -
《疯狂的程序员》
2011-12-13 10:19 611《疯狂的程序员》 年前,去书店,发现了一本书,摆在推荐 ... -
开微博
2011-12-12 13:09 619这里毕竟是CSDN,一个国内领先的IT技术站点。我这里 ... -
Android采用SharedPreferences保存用户登录信息
2011-12-09 11:39 4129[size=small;]??? Androi ...
相关推荐
**Struts2工作流程详解**: 1. **客户端请求**:用户通过浏览器发起HTTP请求,目标通常是一个Action,如`http://localhost:8080/yourApp/yourAction.action`。 2. **过滤器链**:请求首先经过一系列过滤器,包括`...
虽然Struts2号称是一个全新的框架,但这仅仅是相对Struts 1而言。Struts 2 与Struts 1相比,确实有很多革命性的改进,但它并不是新发布的新框架,而是在另一个赫赫有名的框架:WebWork基础上发展起来的。从某种程度...
在深入探讨Struts2的工作流程之前,我们先了解一下MVC模式的基本概念。MVC模式将应用逻辑分隔为三个部分:模型(Model)处理业务逻辑,视图(View)负责展示数据,控制器(Controller)协调用户输入和模型间的交互。...
这些配置是理解程序工作流程的关键。 3. **Interceptor拦截器**:拦截器允许在Action执行前后插入自定义逻辑,如日志、权限检查等。在项目中,可能会看到如`params`、`validation`、`exception`等内置拦截器的使用...
### 二、Struts2工作流程详解 #### 1. 请求初始化 一切始于客户端发起的HTTP请求,该请求通常包含用户提交的数据和请求的资源标识符。请求首先到达Web服务器的Servlet容器,如Apache Tomcat。 #### 2. 过滤器链 ...
#### Struts2工作流程 1. **用户提交请求**:客户端通过HTTP协议向服务器发送请求。 2. **FilterDispatcher拦截请求**:所有的请求首先被FilterDispatcher捕获。 3. **ActionMapper确定Action**:...
总的来说,Struts2的工作流程大致为:请求到达->过滤器Dispatcher拦截->查找Action映射->创建Action实例->执行拦截器链->调用Action的execute方法->返回Result->渲染视图。这种设计允许开发者将业务逻辑、数据验证、...
首先,Struts2是基于Model-View-Controller (MVC)设计模式的,它简化了从前端到后端的交互流程。在Struts2中,Action类扮演控制器的角色,处理用户的请求,并调用模型层进行业务逻辑处理。同时,Struts2通过配置文件...
struts2工作原理、请求响应流程。。。。。。。。。。。。。。。
这张图是理解Struts2工作流程的重要辅助工具,通过它你可以直观地看到每个组件如何协同工作。 `struts原理.txt`文件可能包含了文字描述,进一步解释了Struts2的核心概念和机制,比如Action的配置、结果映射、拦截器...
通过学习和实践这个Struts2框架程序示例,开发者可以深入理解Struts2的工作原理,掌握如何创建Action、编写Interceptor、配置Action与Result的映射,以及如何利用Struts2的其他特性来提高开发效率和代码质量。...
理解不同的结果类型,如“dispatcher”(用于转发到JSP)和“stream”(用于下载文件),是掌握Struts2工作流程的关键。 4. **拦截器**:Struts2的拦截器机制允许在Action调用前后插入自定义逻辑,如日志、权限检查...
### Struts2的工作流程及配置文件详解 #### 一、Struts2简介 Struts2是基于MVC设计模式的Java Web开发框架之一,它继承了Struts1的优点,并在此基础上进行了大量的改进和扩展。Struts2框架的核心是拦截器...
这个"struts2示例程序"是为了帮助初学者理解并熟悉Struts2框架的基本概念和工作流程。该程序基于Struts2的2.0.14版本,这是Struts2的一个较早版本,但其核心概念和机制在后续版本中仍然适用。 Struts2的核心特性...
Struts2 项目开发 Struts2 是一个基于 Java Web 的框架,广泛应用于 Web ...通过了解 Struts2 框架的应用、开发流程、技术架构、实践经验等方面的知识点,可以更好地应用 Struts2 框架,开发高质量的 Web 应用程序。