action之间的跳转

一、当type为chain 时,说明是action链,运行完第一个action java文件接着会运行第二个action JAVA 文件,相当于forward(客户端的url不会改变).

   <result name="noPass" type="chain">
  
             <param
name="actionName">system/User_customerResult</param>
 
          
     <param
name="namespace">/</param>
          
     <param name="method
">login</param>
       </result>

  actionName (默认) -- 被调用的action的名字

  namespace --
被调用的action的名称空间. 如果名称空间为空,这默认为当前名称空间
  method --
用于指定目标action的另一个方法被调用. 如果空,默认为excute方法 

  chain处理完后转发到一个action,请求参数全部丢失,action处理结果不会丢失。

  chain拦截器,处于chain链中的所有action共享一下值栈,每个action把值压入值栈,要用值时从值栈中取

二、当type为redirect-action时,说明会跳转到第二个action的url (客户端的url会改变)

redirect-action处理完后重定向到一个action,请求参数全部丢失,action处理结果也全部丢失。 

重定向的调用者和被调用者使用各自的request  and  response对象,它们属于两个独立的访问请求和响应过程。

重定向需要两次请求能完成的工作,请求转发只要通过一次请求即可完成。这样一来我们也就明白了为什么请求不会造成数据丢失。 

ActionName (默认) - 重定位到的action名 

namespace - action的名称空间. 如果为null,则为当前名称空间

三、redirect
(1)可以重定向到一个页面,另一个action或一个网址。 Xml代码 

1. <result name="success" type="redirect">aaa.jsp</result>

2. <result name="success" type="redirect">bbb.action</result>

3. <result name="success" type="redirect">www.baidu.com</result>

(2)实现方式:
查看doExecute方法,只有一个出口: response.sendRedirect(finalLocation);

sendRedirect是重定向,是重新产生一个HTTP请求到服务器,故重定向后其原来所在的action上下文就不可用了。

action之间的跳转,布布扣,bubuko.com

时间: 2024-11-23 21:03:18

action之间的跳转的相关文章

struts2 action 之间的跳转

从action1直接跳转到action2,有两种方法: 1. 需要保存前一个action的属性信息时使用,保存住action1的request对象:      <result type= "chain " name="a2">action2</result>  此处 action2 指action名称,无须带.action 或者.do2. 不保存前一个action的参数可以用这种方法:       <result  type= &quo

struts1 action之间的跳转

ActionForward actionForward = new ActionForward(); actionForward.setPath("xxxxxxxx");//跳转的action的地址 actionForward.setRedirect(true); return actionForward; 原文地址:https://www.cnblogs.com/penghq/p/9408002.html

两个action之间进行跳转

名字 说明 Chain 用来处理Action链 Dispatcher 用来转向页面,通常处理JSP FreeMarker 处理FreeMarker模板 HttpHeader 用来控制特殊的Http行为 Redirect 重定向到一个URL Redirect Action 重定向到一个Action Stream 向浏览器发送InputSream对象,通常用来处理文件下载 Velocity 处理Velocity模板 XLS 处理XML/XLST模板 PlainText 显示原始文件内容,例如文件源代

struts2中两个action之间的跳转(struts.xml)

1. action的配置中,有一个为"redirectAction"(重定向到一个Action)和chain(就是所谓的action请求链)的action类型顺便说一下struts2的action type:chain   用来处理Action链 dispatcher  用来转向页面,通常处理JSP redirect  重定向到一个URL redirectAction(或redirect-action)   重定向到一个Action 2. 范例 <action name=&quo

struts2中action向action之间传数据和action向jsp传数据理解

1,在 Action中我们经常会从这个Action跳转到另一个Action中,这时我们就要用到redirect.redirect-action.chain, 其中redirect和redirect-action是重定向,相当于浏览器二次请求,之前的数据都会丢失,所有的参数.值栈和请求属性都会丢失.chain是服务器转发action,源Action的用户请求参数.值栈.session的数据赋值给目的Action,即在目的action中可以获得源action得到的请求参数值栈,session等数据.

Mvc中域的添加和不同域之间的跳转

一.在新添加的域中中的 AreaRegistration中作如下设置: 二.在原来的Global.asax中设置: 三.不同域之间的跳转 @Url.Action("Index", "Imageselect", new { Area = "" })为空表示跳转到原来的域.

实现android activity之间的跳转

android程序一般不会只有一个activity,会碰到activity之间的跳转.以下是使用Intent做应用程序内部的activity做跳转.比如,应用程序第一个activity是: 点击“下一步”按钮后: 这需要写两个Activity类.第一个是:MainActivity 1 package com.easymorse; 2 3 import android.app.Activity; 4 import android.content.Intent; 5 import android.o

杂记之activity之间的跳转

代码结构图 manifest.xml <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="cn.com.chenzheng_java" android:versionCode="1" android:versi

多控制器之间的跳转

1>  什么是多控制器之间的跳转? 在一个 APP 中,会存在多个控制器,多个控制器的存在就会存在控制器的跳转问题. 2>  包含:连线跳转,modal 方式以及navigationController/tabBarontroller方式 连线跳转:根据绑定的 ID 进行控制器的跳转 连线跳转的分类: > 自动型:点击控件后,自动跳转到下一个控制器(action – push 方式) > 手动型:需要借助于代码手动完成. 手动型,是指从来源控制器拖到目标控制器.(manual –