从Action中传值到JSP页面的方法

1、一般是在Action中定义一个成员变量,然后对这个成员变量提供get/set方法,在JSP页面就可以取到这个变量的值了。###

1)在Action中定义成员变量

//定义一个成员变量
private String message;
    
//提供get/set方法
public String getMessage() {
    return message;
}
public void setMessage(String message) {
    this.message = message;
}

2)在JSP页面中取值
${message}
或者
<s:property value="message"/>

2、但是定义的成员变量多了,感觉整个Action的代码就很长了。这个时候可以使用一些Servlet API进行值的存取操作:HttpServletRequest、HttpSession和ServletContext。Struts2对这个三个对象用Map进行了封装,我们就可以使用Map对象来存取数据了。###

1)在Action中存值

ActionContext actionContext = ActionContext.getContext();
        
//get HttpServletRequest
Map<String,Object> request = (Map) actionContext.get("request");
request.put("a", "a is in request");
        
//get HttpSession
//Map<String,Object> session = (Map) actionContext.get("session");
Map<String,Object> session = actionContext.getSession();
session.put("b", "b is in session");
        
//get ServletContext
//Map<String,Object> application  = (Map) actionContext.get("application");
Map<String,Object> application  = actionContext.getApplication();
application.put("c", "c is in application");

2)在JSP页面上取值

${a}
${b}
${c}
or              
${requestScope.a}
${sessionScope.b}
${applicationScope.c}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,765评论 18 399
  • 1.学习内容 JSP技术入门和常用指令 JSP的内置对象&标签介绍 EL表达式&EL的内置对象 2.JSP技术入门...
    WendyVIV阅读 2,172评论 1 18
  • action中如何接受页面传过来的参数 第一种情况:(同名参数) 例如:通过页面要把id=1 name=tom a...
    清枫_小天阅读 3,003评论 1 22
  • 一. Java基础部分.................................................
    wy_sure阅读 3,835评论 0 11
  • 谢润雨 / 地产人 / 撰写人 / 自媒体人 / 闲暇的时候,你是否会认真地想过,假如这个世界上存在另一个你,一个...
    谢润雨阅读 488评论 1 3