Struts2中的3种传值方式

2018-08-10 16:40:16 浏览数 (1)

1、直接通过action中行设置相应的get和set方法

代码语言:javascript复制
        this.setName("张三");
        this.setPassword("123");

2、通过ActionContext完成值得传递

代码语言:javascript复制
        ActionContext.getContext().put("aa", 12345);
        ActionContext.getContext().put("bb", "abc");

3、可以通过Servlet的API传值

代码语言:javascript复制
        ServletActionContext.getRequest().setAttribute("dd", "Hello,World.");
例程如下:
代码语言:javascript复制
package net.qbzhong.action;

import org.apache.struts2.ServletActionContext;
import com.opensymphony.xwork2.ActionContext;

public class HelloAction {

    private String  name;
    private String password;

    public String getName() {
        return name;
    }

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

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public String execute(){

        //传值的第一种方式,直接通过在action中设置相应的get方法和set方法
        this.setName("张三");
        this.setPassword("123");
        //第二种方式通过ActionContext完成值得传递
        ActionContext.getContext().put("aa", 12345);
        ActionContext.getContext().put("bb", "abc");
        ActionContext.getContext().put("cc", this.getName());
        //第三种传值方式,可以通过Servlet的API传值
        ServletActionContext.getRequest().setAttribute("dd", "Hello,World.");

        return "success";

    }
}

0 人点赞