struts2 action重定向
struts2的结果类型:
<action name="loginAction" class="com.itheima.action.LoginAction">
<result name="success" <strong><span style="color:#FF6666;">type="chain"</span></strong>>
<param name="actionName">successAction</param>
<param name="name">${name}</param>
</result>
</action>
struts2中的结果类型有下面几种:
<result-types>
<result-type name="chain" class="com.opensymphony.xwork2.ActionChainResult"/>
<result-type name="dispatcher" class="org.apache.struts2.dispatcher.ServletDispatcherResult" default="true"/>
<result-type name="freemarker" class="org.apache.struts2.views.freemarker.FreemarkerResult"/>
<result-type name="httpheader" class="org.apache.struts2.dispatcher.HttpHeaderResult"/>
<result-type name="redirect" class="org.apache.struts2.dispatcher.ServletRedirectResult"/>
<result-type name="redirectAction" class="org.apache.struts2.dispatcher.ServletActionRedirectResult"/>
<result-type name="stream" class="org.apache.struts2.dispatcher.StreamResult"/>
<result-type name="velocity" class="org.apache.struts2.dispatcher.VelocityResult"/>
<result-type name="xslt" class="org.apache.struts2.views.xslt.XSLTResult"/>
<result-type name="plainText" class="org.apache.struts2.dispatcher.PlainTextResult" />
<result-type name="postback" class="org.apache.struts2.dispatcher.PostbackResult" />
</result-types>
重要的有几下几种:
dispatcher —— 请求转发到一个页面 (默认),不能够用这样的方式转发到一个action
chain —— 一个action请求转发至还有一个 action
redirect —— 响应重定向到一个页面,也能够实现响应重定向到action
redirectAction —— 一个action响应重定向至还有一个
action
stream —— 文件下载
注意:假设结果类型改成 type = “chain” ,则加了那些携带的參数都不会起到作用,由于chain 是请求转发,还在一次请求内,本来就携带了參数,不须要再去声明,也不能够加入别的參数,不会起到作用,由于一開始表单提交信息后,该次请求的信息以固定。
响应重定向可防止表单反复提交
一般action重定向到jsp,可是有时会重定向到还有一个action
首先看下LoginAction.java
package com.itheima.action;
public class LoginAction {
private String name;
public String getName() {
return name;
}
public String execute() {
//名字固化,所以不须要setXXX()方法
name="lcl";
return "success";
}
}
SuccessAction.java
package com.itheima.action;
public class SuccessAction {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String execute() {
return "success";
}
}
假设重定向时传递參数,有下面几种方式:
<action name="loginAction" class="com.itheima.action.LoginAction">
<result type="redirect">successAction?name=${name}</result>
</action> <action name="successAction" class="com.itheima.action.SuccessAction">
<result type="redirect">/login.jsp?name=${name}</result>
</action>
<action name="loginAction" class="com.itheima.action.LoginAction">
<result type="redirectAction">successAction?name=${name}</result>
</action> <action name="successAction" class="com.itheima.action.SuccessAction">
<result type="redirect">/login.jsp?name=${name}</result>
</action>
<action name="loginAction" class="com.itheima.action.LoginAction">
<result type="redirectAction">
<param name="actionName">successAction</param>
<param name="name">${name}</param>
</result>
</action> <action name="successAction" class="com.itheima.action.SuccessAction">
<result type="redirect">/login.jsp?name=${name}</result>
</action>
可是以下这样的配置不行:
<action name="loginAction" class="com.itheima.action.LoginAction">
<result type="redirect">
<param name="actionName">successAction</param>
<param name="name">${name}</param>
</result>
</action> <action name="successAction" class="com.itheima.action.SuccessAction">
<result type="redirect">/login.jsp?name=${name}</result>
</action>
struts2 action重定向的更多相关文章
- struts2 action重定向action中文乱码处理
比如:Action方法productCategorySave()变量message,传递给Action方法productCategoryAdd(),当变量message为中文变量时,要进行编码设置,不 ...
- struts2 action 页面跳转
struts2 action 页面跳转 标签: actionstruts2redirect 2013-11-06 16:22 20148人阅读 评论(0) 收藏 举报 (1)type="di ...
- struts2 action result type类型
struts2 action result type类型 1.chain:用来处理Action链,被跳转的action中仍能获取上个页面的值,如request信息. com.opensymphony. ...
- struts2 action配置时 method 省略不写 默认执行方法是父类ActionSuppot中的execute()方法
struts2 action配置时 method 省略不写 默认执行方法是父类ActionSuppot中的execute()方法
- Java Hour 32 Weather ( 5 ) struts2 – Action class
有句名言,叫做10000小时成为某一个领域的专家.姑且不辩论这句话是否正确,让我们到达10000小时的时候再回头来看吧. Hour 32 Struts2 Action 1 将action 映射到 ac ...
- Struts2 Action接收表单参数
struts2 Action获取表单传值 1.通过属性驱动式 JSP: <form action="sys/login.action" method ...
- struts2 action通配符
首先,看一个struts2的配置文件: <package name="actions" extends="struts-default" namespac ...
- Struts2中重定向和请求转发配置
struts2中默认跳转为dispatcher请求转发 只能往jsp转发,跳转action报404 重定向 设置为redirect ,可以是jsp也可以是action <!--同一个包下的act ...
- ASP.Net MVC Action重定向跳出Controller和Area
1.重定向方法简介 [HttpPost] public ActionResult StudentList( string StudName, string studName, DateTime Bir ...
随机推荐
- eclipse在ubuntu13.04下崩溃crash
错误信息: # # A fatal error has been detected by the Java Runtime Environment: # # SIGSEGV (0xb) at pc=0 ...
- POJ 1469 ZOJ1140 二分匹配裸题
很裸,左点阵n,右点阵m 问最大匹配是否为n #include <cstdio> #include <cstring> #include <vector> usin ...
- 注册界面的优化之ActionBar组件的应用之(二)ActionBar组件的事件处理
开发步骤: 重写父类中的一个方法onOptionsItemSelected实现ActionBar中的选项单击事件 //Register_Activity.java public class Regis ...
- TCP 和 UDP 协议发送数据包的大小 (转载)
MTU最大传输单元,这个最大传输单元实际上和链路层协议有着密切的关系,EthernetII帧的结构DMAC+SMAC+Type+Data+CRC由于以太网传输电气方面的限制,每个以太网帧都有最小的大小 ...
- 求a,b在区间上的公倍数个数
给你两个数 a,b.问你区间 [1,N]中都是有多少个数是a,b的公倍数.当数据很大的时候,遍历肯定会超时.其实,我们可以首先求出 lcm(a,b).因为我们知道(a,b)公倍数都是它最小公倍数的倍数 ...
- vim常用指令一览
插入指令 i 在光标处插入字符 I 在光标所在行最前插入 a 在光标所在字符后面插入 A 在光标所在行的最后插入 o 在光表所在行下面插入一行 O 在光标所在行上面插入一行 r 替换光标所在字符,只替 ...
- NYOJ 45 棋盘覆盖
棋盘覆盖 水题,题不难,找公式难 import java.math.BigInteger; import java.util.Scanner; public class Main { public s ...
- YUI Array 之each| forEach(遍历)
1. yui-each原码: 遍历YArray.each = YArray.forEach = Lang._isNative(Native.forEach) ? function (array, fn ...
- JSON序列化选项
JSON.stringify()除了接受序列化js对象外,还可以接受另外的两个参数,这两个参数用于指定使用什么样的方式序列化js对象. 第一个参数是个过滤器,可以一个数组或者一个函数:第二个参数是一个 ...
- HTML5简单入门系列(三)
前言 本篇介绍HTML5支持的Web存储(Web Storage)和HTML 5 应用程序缓存. 客户端存储数据介绍 HTML5 提供了两种在客户端存储数据的新方法: localStorage - 没 ...