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. 柯南君:看大数据时代下的IT架构(9)消息队列之RabbitMQ--案例(RPC起航)

    二.Remote procedure call (RPC)(using the Java client) 三.Client interface(客户端接口) 为了展示一个RPC服务是如何使用的,我们将 ...

  2. Michael Kors - Wikipedia, the free encyclopedia

    Michael Kors - Wikipedia, the free encyclopedia Michael Kors From Wikipedia, the free encyclopedia   ...

  3. Oracle - index (索引)

        索引: 一种独立于表的模式对象, 可以存储在与表不同的磁盘或表空间中 @ 索引被删除或损坏, 不会对表产生影响, 其影响的只是查询的速度 @ 索引一旦建立, Oracle 管理系统会对其进行自 ...

  4. linux内核源码阅读之facebook硬盘加速flashcache之八

    前面我们的分析中重点关注正常的数据流程,这一小节关注如果有异常,那么流程是怎么走完的呢? 1)创建新任务时kcached_job申请不到 2)读写命中时cache块为忙 3)系统关机时处理,系统开机时 ...

  5. mysql 5.6密码强度插件使用

    在mysql 5.6对密码的强度进行了加强,推出了validate_password 插件.支持密码的强度要求. 此插件要求版本:5.6.6 以上版本安装方式: 1.安装插件:(默认安装了插件后,强度 ...

  6. ZOJ1100 状压DP +深搜

    记得做过类似于这类题目是能够用组合数学方法来解决的,可惜淡忘了,也找不到了,看了网上的也有人提到过能够用组合公式解决,但是没人做,都是用了状压DP的方法,这个状压非常难讲清楚吧,推荐两篇 第一遍大体看 ...

  7. jvm的内存管理【转】

    [转]JVM内存管理 这些日子一直在研究jvm内存管理的东西,网上的知识很多,总结一下,能沉淀下来的就是自己的! 首先,刚学java的时候就知道java类文件是以 .java为后缀的文件,经过java ...

  8. 基于注解的EF

    首先得你的ef dll版本在4.1以上 第一步贴第一个类 由于字段太多就写一部分  [Table("NavF")]//设置表名称     public class NavF     ...

  9. 什么是CTS、CLS和CLR

    CTS.CLS和CLR是.NET框架的基本概念,但往往成为程序员们忽视的部分.清楚理解三者的概念,有助于.NET程序员编写高效安全的.NET程序. 所涉及到的知识点 •   .NET的基本概念 •   ...

  10. IE6存在的一些兼容

    1.文档类型的声明. 产生条件:IE6浏览器,当我们没有书写这个文档声明的时候,会触发IE6浏览器的怪异解析现象: 解决办法:书写文档声明. 2.不同浏览器当中,很多的标签的默认样式不同,如默认的外部 ...