Struts 往jsp页面传值的三种方式 以及获取Jsp页面值得一种方式

//传值的的第一种方式直接在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"%>




Insert title here


 
list ${name}------${pass}
 
 ----------------------------
 
 



 ${aaa}------${bbb}
 
 
 
 
 ----------------------------
 
 
 ${hello}
 
 
 


你可能感兴趣的:(struts2,编程开发,jsp)