struts2的result配置

阅读更多

一、配置 result映射
   在result映射的配置中,在指定实际资源的位置时,可以使用绝对路径,也可以使用相对路径。
绝对路径以斜杠(/)开头,相对于当前的Web应用程序的上下文路径;
相对路径不以斜杠(/)开头,相对于当前执行的action的路径,也就是namespace指定的路径。
例如:
  "/admin">
   
            success.jsp
            /error.jsp
   

 

    如果当前Web应用程序的上下文路径是/Shop,那么请求/Shop/admin/login.action,执行成功后,转向的页面路径为:/Shop/admin/success.jsp;执行失败后,转向的页面路径为/Shop/error.jsp.


二、result结果类型详解

struts2的result配置_第1张图片

转发带值,dispatcher(默认)、chain是带传输

 

视图层index.jsp


//传“Struts2”这个值到success.jsp
默认转发_dispatcher
//传不了值到success.jsp 重定向_redirect
//success.jsp中Name和Name2都能取到 链条_chain
//success.jsp中Name取不到,只能取到Name2 重定向到Action_redirectAction
全局result配置
//看注释Struts.xml

重定向不带值。redirect、redirectAction是不带参数传输





	
  
  
  

  	
  		error.jsp
  	
  	
  	
  		success.jsp
  		success.jsp
  		hello2
  		hello2
  	
  	
  	
  		success.jsp
  	
  

action层HelloAction


import com.opensymphony.xwork2.ActionSupport;

public class HelloAction extends ActionSupport{

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	
	private String name;


	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}


	@Override
	public String execute() throws Exception {
		if(name==null || "".equals(name)){
			this.error="name是空";
			return ERROR;
		}
		return SUCCESS;
	}
	
	
	public String r()throws Exception{
		return "r";
	}
	
	public String c()throws Exception{
		return "c";
	}

	public String ra()throws Exception{
		return "ra";
	}
	
	
	
}

action层HelloAction2

import com.opensymphony.xwork2.ActionSupport;

public class HelloAction2 extends ActionSupport{

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	
	private String name2;

	public String getName2() {
		return name2;
	}


	public void setName2(String name2) {
		this.name2 = name2;
	}


	@Override
	public String execute() throws Exception {
		this.name2="你好啊";
		return SUCCESS;
	}
	
	
}

 

视图层success.jsp


Name:${name }
Name2:${name2 }

 

转载于:https://my.oschina.net/u/3848699/blog/2208093

你可能感兴趣的:(struts2的result配置)