参数传递

一般有3种方法

  1. 在Action中添加同名属性,并添加set,get方法
    这样在视图页面就可以通过EL表达式${ name }来获取,或通过Struts标签<s:property value="name">,或<s:property value="#root[0].name">
  2. 通过ActionContext传递
    ActionContext.getContext().put(String name, Object value);

    通过Struts标签<s:property value="#name">

  3. 通过Servlet的API传递
    ServletAciontContext.getRequest.setAttribute(String name, Ojbect value);
    ServletActionContext.getServletContext();//获取ServletContext对象
    ServletActionContext.getResponse();//获取HttpServletResponse对象
    //再通过request.getSession()来获取Session对象
    

    通过Struts标签<s:property value="#request.name">或${ requestScope.name}

要查看ValueStack及Context中的内容,可通过<s:debug />生成的链接去查看

你可能感兴趣的:(参数传递)