- 浏览: 253263 次
- 性别:
- 来自: 湖南
文章分类
- 全部博客 (194)
- java (23)
- 数据结构和算法 (5)
- oracle (7)
- sql server (1)
- mysql (5)
- Ajax (5)
- JSTL (7)
- jsp (20)
- 组件 (11)
- C++可视化 (0)
- javascript (14)
- c/c++ (0)
- XML (6)
- 只是扩宽 (0)
- 设计模式 (3)
- 正则表达式 (3)
- 心情和感悟 (4)
- ACM (3)
- HTML/css (9)
- 软件破解 (2)
- spring (1)
- struts (15)
- hibernate (10)
- Servlet (2)
- sql (2)
- 面试题 (1)
- struts2 (22)
- Unix/Linux (0)
- javamail (1)
- svn (1)
- 异常 (3)
- EJB (3)
- jquery (2)
- android (1)
最新评论
-
lianlupengUestc:
From my testing (Struts2 versio ...
struts2 注解 -
yulongxiang:
非常感谢!!!!!!!
使用动态ActionForm(转)
用来处理Action链
com.opensymphony.xwork2.ActionChainResult
dispatcher
用来转向页面,通常处理JSP
org.apache.struts2.dispatcher.ServletDispatcherResult
freemaker
处理FreeMarker模板
org.apache.struts2.views.freemarker.FreemarkerResult
httpheader
控制特殊HTTP行为的结果类型
org.apache.struts2.dispatcher.HttpHeaderResult
redirect
重定向到一个URL
org.apache.struts2.dispatcher.ServletRedirectResult
redirectAction
重定向到一个Action
org.apache.struts2.dispatcher.ServletActionRedirectResult
stream
向浏览器发送InputSream对象,通常用来处理文件下载,还可用于返回AJAX数据
org.apache.struts2.dispatcher.StreamResult
velocity
处理Velocity模板
org.apache.struts2.dispatcher.VelocityResult
xslt
处理XML/XLST模板
org.apache.struts2.views.xslt.XSLTResult
plainText
显示原始文件内容,例如文件源代码
org.apache.struts2.dispatcher.PlainTextResult
redirect-action
重定向到一个Action
org.apache.struts2.dispatcher.ServletActionRedirectResult
plaintext
显示原始文件内容,例如文件源代码
org.apache.struts2.dispatcher.PlainTextResult
一、dispatcher
(1)为缺省的result类型,一般情况下我们在struts.xml会这么写:
以上写法使用了两个默认,其完整的写法为:
第一个默认:type="dispatcher";第二个默认:设置的为location参数,location只能是页面,不能是另一个action(可用type="chain"解决)。
(2)实现方式
从doExecute方法看出,有三个出口(finalLocation为要跳转的地址):
pageContext.include(finalLocation);
dispatcher.forward(request, response); (dispatcher是根据finalLocation创建的)
dispatcher.include(request, response);
而我们知道,forward与include都是转发到context内部的资源。
二、redirect
(1)可以重定向到一个页面,另一个action或一个网址。
(2)实现方式:
查看doExecute方法,只有一个出口:
response.sendRedirect(finalLocation);
sendRedirect是重定向,是重新产生一个HTTP请求到服务器,故重定向后其原来所在的action上下文就不可用了。
三、chain
(1)主要用于把相关的几个action连接起来,共同完成一个功能。
(2)实现方式:
查看execute()方法,主要思想如下:
// 根据Action名称finalActionName及要调用的方法finalMethodName来new一个代理对象proxy,并执行之
(3)多个action间数据的传递
主要有两种方式:
1。由于处于chain中的action属于同一个http请求,共享一个ActionContext,故可以在上下文中获取,在页面上可以直接使用。手动获取的方法如下:
2。实现ModelDriven接口
在Step1Action中,加入getModel:
在Step2Action中,加入setModel:
注意,setModel的调用先于execute()方法后于构造方法。
发表评论
-
Struts2.1 处理未知Action 和访问不存在的页面
2011-10-18 12:13 1369你可以配置个默认action,当请求的action不存在时,他 ... -
struts2文件上传
2011-04-05 01:25 969package com.hugui.qq.web.acti ... -
struts.xml (constant)
2011-03-26 19:12 1020<?xml version="1.0&qu ... -
java.lang.NoClassDefFoundError: org/apache/commons/fileupload/RequestContext
2011-03-26 18:17 8917严重: Exception starting filter ... -
struts2-写自己的转换器
2010-09-17 22:35 908b) 写自己的转换器: public class MyPoi ... -
struts2-用token拦截器屏蔽重复提交问题
2010-09-17 21:27 1112在服务器端生成一个随机值,然后传给客户端的form中,当客户端 ... -
struts2-自定义拦截器
2010-09-17 21:02 990用来验证。。。等等 package com.hugui. ... -
struts2-i18n
2010-09-16 21:59 1441login.username=username: log ... -
struts2-tags
2010-09-15 22:38 1000<?xml version="1.0&qu ... -
OGNL表达式语言学习
2010-09-13 10:31 987<?xml version="1.0&qu ... -
struts2-动态结果集
2010-09-13 09:03 1371UserAction.java package com.hu ... -
struts2-带参数的结果集
2010-09-13 08:58 940UserAction.java package com.h ... -
struts2-global-results
2010-09-12 23:31 1125struts.xml <?xml version=& ... -
Struts2 使用Domain Model接收参数
2010-09-12 00:01 3078Domain Model 域模型,包含着项目里真正证存在的概念 ... -
Struts2_ActionWildcard_通配符配置
2010-09-11 23:30 803<?xml version="1.0&qu ... -
Struts2_ActionMethod_DMI_动态方法调用
2010-09-11 22:57 1306动态的方法调用:DMI 在form的action中使用动态的方 ... -
struts2-Action
2010-09-11 22:42 973<?xml version="1.0&qu ... -
struts2-path
2010-09-11 22:37 859<?xml version="1.0&qu ... -
struts.xml
2010-09-11 21:10 762<?xml version="1.0&qu ... -
struts2 中MyEclipse操作手册[来自互联网]
2010-09-11 20:48 1777前言 假 如 你 的 人 生 ...
相关推荐
Struts2 中常用 Result 类型(type)的用法和出现的问题 Struts2 中的 Result 类型(type)是指在 Struts2 框架中用于确定 action 执行结果的方式。常用的 Result 类型有 dispatcher、redirect 和 chain 三种。这三...
1. struts2-core-2.3.4.1.jar:这是Struts2的核心库,包含了框架的基础功能,如Action类、Result类型、拦截器、配置管理等。它是所有Struts2应用的基础,没有它,其他组件无法正常工作。 2. xwork-core-2.3.4.1.jar...
Struts2支持多种类型的`Result`,每种类型都有其独特的功能和应用场景: ##### 1. **dispatcher** `dispatcher`是最常用的类型之一,它通过调用`RequestDispatcher`类的`forward()`方法或`include()`方法将请求转发...
`struts2常用包.zip`包含了Struts2框架运行所必需的一些核心库和其他支持库。下面将详细介绍这些文件及其在Struts2中的作用: 1. `struts2-core-2.3.1.2.jar`:这是Struts2的核心库,包含了框架的主要组件和功能。...
本压缩包包含了13个Struts2框架中常用的类包,对于初学者和学生来说,掌握这些类包将对理解Struts2的工作原理及其核心功能大有裨益。 1. **struts2-core**: 这是Struts2的核心库,包含了框架的基础组件。如Action、...
本文将深入探讨Struts2配置文件中`result`的配置方法及其不同的类型,并通过具体的代码示例来帮助读者更好地理解和掌握这一知识点。 #### 1. 全局结果配置 (Global Results) 全局结果配置是Struts2提供的一种高效...
- **优势**:使用 Struts2 可以显著提高开发效率,因为它能够处理很多基础任务,如数据接收、类型转换、验证等。 **1.2 Struts2 架构** - **MVC 架构**:Struts2 采用经典的 MVC 架构,分为模型(Model)、视图(View)...
在使用Struts2时,了解并掌握其常用的类库至关重要。以下是一些核心的Struts2类库及其作用的详细解释: 1. **Struts2 Core Library**:这是Struts2的核心库,包含了框架的基本组件,如Action、Result、Interceptor...
8. **结果类型(Result Type)**:Struts2提供了多种内置的结果类型,如dispatcher、stream、redirect等,用于控制请求的转发或重定向。 9. **动作(Action)**:Action是业务逻辑的载体,通常对应一个具体的用户操作。...
4. **javassist-3.11.0.GA.jar**:Javassist是一个Java字节码操作和分析框架,Struts2使用它来动态地修改或生成类,例如在运行时实现方法拦截。 5. **log4j-1.2.17.jar**:这是一个流行的日志记录框架,Struts2使用...
### Struts2拦截器的使用方法 #### 一、Struts2拦截器概述 Struts2框架中的拦截器(Interceptor)是一种重要的机制,用于在Action执行前后进行一系列处理,比如参数验证、数据预处理等。它能够帮助开发者更加灵活...
- **防止XSS攻击**:使用Struts2提供的过滤器或拦截器避免跨站脚本攻击。 - **防止CSRF攻击**:配置Struts2的安全插件,生成和验证CSRF令牌。 总之,"Struts2框架模板"为初学者提供了一个快速启动Struts2项目的...
- Struts2默认提供了许多内置拦截器,例如`defaultStack`拦截器栈包含了多个常用拦截器。 - **自定义拦截器的实现**: - 实现`Interceptor`接口创建自定义拦截器,需要实现`intercept()`方法。 - 通过继承`...
8. **javassist**: 这是一个字节码操作库,Struts2使用它来实现动态方法调用和拦截器的运行时生成。 9. **log4j**: 日志记录库,用于调试和监控应用的运行情况。 10. **servlet-api**: Java Servlet API,所有Web...
这个"struts2小练习"是针对初学者设计的,旨在帮助他们快速理解和掌握Struts2的核心概念和基本用法。 Struts2框架的核心组成部分包括: 1. **Action类**:这是业务逻辑的主要承载者,处理用户请求并返回结果。在...
这个“Struts2常用jar包.rar”文件包含了运行Struts2应用所需的核心库和依赖,方便开发者直接放入项目的lib目录中使用。下面将详细介绍Struts2框架的关键组件和它们在实际开发中的作用。 1. **核心组件**: - `...
通过查阅API,开发者可以了解如何使用Struts2提供的各种组件,例如ActionSupport、Result、Interceptor等,以及它们的常用属性和方法。 “Struts 2权威指南基于WebWork核心的MVC开发(免费阅读1-3章).rar”这本书的...
4. **结果类型(Result)**:Action执行后会返回一个结果,Struts2支持多种结果类型,如dispatcher(转发到JSP页面)、stream(处理文件下载)等。结果类型在Action类的execute方法中通过返回值或注解指定。 5. **...
在"STRUTS2常用JAr"这个压缩包中,我们通常会看到以下关键的JAR文件: 1. **struts2-core.jar**:这是Struts2框架的核心库,包含了Action、Interceptor、Result以及其他核心组件的实现。它提供了控制器层的主要功能...
在本文中,我们将深入探讨Struts2标签的用法,包括它们的基本概念、类型以及如何在实际开发中应用。 一、Struts2标签基础 Struts2标签库是基于JavaServer Pages (JSP) 标准标签库(JSTL)的扩展,它包含了一系列与...