1.dispatcher

2.redirect

3.chain

4.redirectAction

5.freemarker

6.httpheader

7.stream

8.velocity

9.xslt

10.plaintext

11.tiles

常用的是前四种

<package name="resultType" namespace="/r" extends="struts-default">

        <action name="r1">
<!-- result 不指定type默认为dispatcher 运用服务器跳转 forword到jsp压面 显示action地址 -->
<result type="dispatcher">/r1.jsp</result>
</action> <action name="r2">
<!-- 客户端跳转 显示jsp地址 -->
<result type="redirect">/r2.jsp</result>
</action> <!-- 同r1 forword到另外一个action -->
<action name="r3">
<result type="chain">r1</result>
</action> <!-- 同r2 -->
<action name="r4">
<result type="redirectAction">r2</result>
</action>
</package> <package name="user2" namespace="/user2" extends="struts-default">
<!-- 其他包可以用extends继承 -->
<global-results>
<result name="mainpage">/main.jsp</result>
</global-results> <action name="user2" class="com.ouc.wkp.action.UserAction2">
<result name="success">/r1.jsp</result>
<result name="error">/r2.jsp</result>
</action>
</package> <package name="user3" namespace="/user3" extends="struts-default">
<action name="user3" class="com.ouc.wkp.action.UserAction3">
<result>${r}</result>
</action>
</package>

struts.xml

package com.ouc.wkp.action;

import com.opensymphony.xwork2.ActionSupport;

public class UserAction2 extends ActionSupport {
private int type; public int getType() {
return type;
} public void setType(int type) {
this.type = type;
} @Override
public String execute() throws Exception {
if(type==1){
return "success";
}else if(type==2){
return "error";
}else{
return "mainpage";
}
}
}

UserAction2

动态结果集,在action中保存一个属性,存储具体的结果location
package com.ouc.wkp.action;

import com.opensymphony.xwork2.ActionSupport;

public class UserAction3 extends ActionSupport {
private int type;
private String r; public int getType() {
return type;
} public void setType(int type) {
this.type = type;
} public String getR() {
return r;
} public void setR(String r) {
this.r = r;
} @Override
public String execute() throws Exception {
if (type == 1) {
r = "/r1.jsp";
} else if (type == 2) {
r = "/r2.jsp";
} else {
r = "/main.jsp";
}
return SUCCESS;
}
}

UserAction3

使用redirect跳转时是两次request,需要传参

<!-- <result type="redirect">/xxx.jsp?t=${type}</result> -->

前台通过<s:property value="#parameters.t"/>从actioncontext里面取

result 相关的更多相关文章

  1. 【原创】7. MYSQL++中的查询结果获取(各种Result类型)

    在本节中,我将首先介绍MYSQL++中的查询的几个简单例子用法,然后看一下mysqlpp::Query中的几个与查询相关的方法原型(重点关注返回值),最后对几个关键类型进行解释. 1. MYSQL++ ...

  2. 你从未知道如此强大的ASP.NET MVC DefaultModelBinder

    看到很多ASP.NET MVC项目还在从request.querystring或者formContext里面获取数据,这实在是非常落后的做法.也有的项目建了大量的自定义的modelbinder,以为很 ...

  3. 大批量GPS坐标转百度坐标

    一. 百度地图API大批量转换时有数量限制,一个一个转.  用到的方法接口    /**      源坐标 格式:经度,纬度;经度,纬度… 最多支持100个;      源坐标类型:默认为1,即GPS ...

  4. Java日期格式化

    翻译人员: 铁锚 翻译时间: 2013年11月17日 原文链接:   Simple example to show how to use Date Formatting in Java 代码示例如下, ...

  5. Jquery Ajax方法传递json到action

    ajax向后台传入json需要设置option,如下 contentType:'application/json' data:Json.Stringify(jsObj) 后台处理复杂json对象(不知 ...

  6. 12.06 JavaScript

    任务 掌握JavaScript基础知识,能够使用JavaScript编写一些复杂度不大的交互功能. 任务: JavaScript基础 做完任务一的时候深深地感觉到自己的基础非常的薄弱,在这里再次感谢一 ...

  7. asp.net core mvc剖析:动作执行

    紧跟上一篇文章.通过路由和动作匹配后,最终会得到跟当前请求最匹配的一个ActionDescriptor,然后通过IActionInvoker执行动作. 我们先来看一下IActionInvoker如何得 ...

  8. HashMap源码详解(JDK7版本)

    一.内部属性 内部属性源码: //内部数组的默认初始容量,作为hashmap的初始容量,是2的4次方,2的n次方的作用是减少hash冲突 static final int DEFAULT_INITIA ...

  9. 基于Metronic的Bootstrap开发框架经验总结(15)-- 更新使用Metronic 4.75版本

    在基于Metronic的Bootstrap开发框架中,一直都希望整合较新.较好的前端技术,结合MVC的后端技术进行项目的开发,随着时间的推移,目前Metronic也更新到了4.75版本,因此着手对这个 ...

随机推荐

  1. 这才是正确删除 office 的方式

    https://support.office.com/zh-cn/article/%E9%80%9A%E8%BF%87%E5%9C%A8%E9%87%8D%E6%96%B0%E5%AE%89%E8%A ...

  2. Android之条码扫描二维码扫描

    Android之条码扫描二维码扫描 二维码条形码扫描,参考技术网址: 1.Apache License 2.0 开源的ZXing项目的简化版 http://xinlanzero.iteye.com/b ...

  3. hdu 1210_(逻辑训练)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1210 #include<stdio.h> int main() { int n,t,sum ...

  4. openNebula 运维系列虚拟机virtual machines operations

    1,virtual machine manage,VMInstance state; http://docs.opennebula.org/4.4/user/virtual_resource_mana ...

  5. Nanjing GDG Meetup 8月线下活动

    致各位亲爱的 Google 技术爱好者 很高兴的通知各位朋友,Nanjing GDG 将在本周六 (08/31) 举办线下活动,讨论 Android 开发实战技巧,热烈欢迎大家报名参加. 时间:  8 ...

  6. 程序猿的量化交易之路(20)--Cointrader之Assert实体(8)

    转载需说明出处:http://blog.csdn.net/minimicall, http://cloudtrade.top 不论什么可交易的都能够称之为Assert,资产.其类代码例如以下: pac ...

  7. NSJSONSerialization(category)的一个扩展类

    .h文件 // // NSJSONSerialization+Manage.h // SVPullToRefreshDemo // // Created by Fuer on 14-7-4. // C ...

  8. Swift语言iOS8的蓝牙Bluetooth解析

    开发中央步骤: 1.添加CoreBluetooth.framework框架到你的工程 2.继承两个协议:CBCentralManagerDelegate和CBPeripheralDelegate 个人 ...

  9. Infragistics的介绍以及在ASP.net中使用的总结

    Infragistics系列控件是一套很好,很强大的控件,.感觉很好..现在自己做项目也用..却发现网上没有一套中文的教程,中文资料都很少..在这里就把自己的研究心得写下来... 首先安装,一步一步装 ...

  10. jQuery中 prop() attr()使用详解

    对于HTML元素本身就带有的固有属性,在处理时,使用prop方法.  对于HTML元素我们自己自定义的DOM属性,在处理时,使用attr方法. 在高版本的jquery引入prop方法后,什么时候该用p ...