//传值的的第一种方式直接在action中getset方法完成值的传递
第一种方法值是放在值栈valuestack中其余两种是放在actioncontext中
this.setName("Damon");
this.setPass("123");
//第二种方式通过ActionContext完成值得传递
ActionContext.getContext().put("aaa",123456);
ActionContext.getContext().put("bbb",78910);
//第三种的传值方式Servlet api来传值
//这里一定要记得加入servlet api.jar这个包否则会报错 在tomcat lib 目录下
//这里一样是把之放到actioncontext 但是这里在Jsp页面获取要通过request.***来获取
ServletActionContext.getRequest().setAttribute("hello","Jack");
如果要获取jsp传过来的值只要acton中有get方法即可但是要注意比如setName 这里传过来的参数必须叫做name
UserActon
package com.bnuep.action;
import org.apache.struts2.ServletActionContext;
import com.opensymphony.xwork2.ActionContext;
public class UserAction {
String name;
String pass;
public String add() {
System.out.println("add");
return "r_list";
}
public String addInput() {
//获取Jsp传过来的值这里是通过getName这个方法来传值所以必须要有get方法
System.out.println(name + " " + pass);
return "success";
}
public String getName() {
return name;
}
public String getPass() {
return pass;
}
public String list() {
//传值的的第一种方式直接在action中getset方法完成值的传递
this.setName("Damon");
this.setPass("123");
System.out.println("list");
//第二种方式通过ActionContext完成值得传递
ActionContext.getContext().put("aaa",123456);
ActionContext.getContext().put("bbb",78910);
//第三种的传值方式Servlet api来传值
//这里一定要记得加入servlet api.jar这个包否则会报错 在tomcat lib 目录下
//这里一样是把之放到actioncontext
ServletActionContext.getRequest().setAttribute("hello","Jack");
return "success";
}
public String select() {
System.out.println("select");
return "success";
}
public void setName(String name) {
this.name = name;
}
public void setPass(String pass) {
this.pass = pass;
}
}
list.xml
<%@ page language="java" contentType="text/html; charset=GB18030"
pageEncoding="GB18030"%>
<%@taglib prefix="s" uri="/struts-tags"%>