struts2 访问或添加request/session/application属性

第一种方法:

ActionContext ctx = ActionContext.getContext();  
    ctx.put("r1", list);//向request中添加属性  
    ctx.getSession().put("s1",list);//向session中添加属性  
    ctx.getApplication().put("a1", list);//向application中添加属性 

 

    HttpSession session =null;  
            session = ServletActionContext.getRequest().getSession();  
            if(session.getAttribute("user") != null) {  
                session.removeAttribute("user");  
            }  
            session.setAttribute("user", user);  
    Map<String,Object> session = null;  
            session = ActionContext.getContext().getSession();  
            if(session.containsKey("user")){  
                session.remove("user");  
            }  
              
            session.put("user", user);  

 

第二种方法:

使用 ServletRequestAware接口

 

    public class LoginAction4 extends ActionSupport implements ServletRequestAware {  
          
        private HttpServletRequest request;  
        private HttpSession session;  
        private ServletContext application;  
          
          
          
        public String execute() {  
            request.setAttribute("r1", "r1");  
            session.setAttribute("s1", "s1");  
            application.setAttribute("a1", "a1");  
            return SUCCESS;   
        }  
      
      
      
        @Override  
        public void setServletRequest(HttpServletRequest request) {  
            this.request = request;  
            this.session = request.getSession();  
            this.application = session.getServletContext();  
        }  
          
    }  

 

 struts2访问request、session、application属性

第一种方法:

使用struts tag:

    <s:property value="#request.r1"/>   
    <s:property value="#session.s1"/>   
    <s:property value="#application.a1"/>   

 第二种方法:

使用jsp对象

    <%=request.getAttribute("r1") %> <br />  
    <%=session.getAttribute("s1") %> <br />  
    <%=application.getAttribute("a1")%> <br />  

 

posted @ 2014-12-18 11:26  _启明  阅读(245)  评论(0编辑  收藏  举报