Action如何去使用session request ,application

package cn.happy.day02servletapi;  
  
import com.opensymphony.xwork2.Action;  
import com.opensymphony.xwork2.ActionContext;  
import com.opensymphony.xwork2.ModelDriven;  
import com.opensymphony.xwork2.util.ValueStack;  
import org.apache.struts2.ServletActionContext;  
import org.apache.struts2.interceptor.ServletRequestAware;  
import org.apache.struts2.util.ServletContextAware;  
  
import javax.servlet.ServletContext;  
import javax.servlet.http.HttpServletRequest;  
import javax.servlet.http.HttpSession;  
import java.util.Map;  
  
/** 
 * Created by 哈哈 on 2017/10/22. 
 */  
public class LoginAction implements Action,ServletRequestAware,ServletContextAware{  
  
    private HttpServletRequest request;  
    private ServletContext servletContext;  
  
    public String execute() throws Exception {  
        ActionContext context=ActionContext.getContext();  
        Map map = context.getSession();  
        //方法一  
      /*  map.put("uname","周三");*/  
  
        //方法二  
       /* //Session 
        HttpSession session = ServletActionContext.getRequest().getSession(); 
        session.setAttribute("uname","admin_session"); 
        //Request 
        HttpServletRequest request = ServletActionContext.getRequest(); 
        request.setAttribute("uname","admin_request"); 
        //ServletContext application 
        ServletContext servletContext = ServletActionContext.getServletContext(); 
        servletContext.setAttribute("uname","admin_content");*/  
  
       //方法三:  
        /*HttpSession session = request.getSession(); 
        session.setAttribute("uname","张三");*/  
  
        //方法四 .五:  
        //放入值栈  
       /* map.put("uname","周三"); 
        ValueStack valueStack = ActionContext.getContext().getValueStack(); 
        valueStack.push(map); 
       */  
        //方法五:  
        HttpServletRequest request = ServletActionContext.getRequest();  
        ValueStack vs= (ValueStack)request.getAttribute("struts.valueStack");  
        vs.push(map);  
  
        return SUCCESS;  
    }  
  
  
    public void setServletRequest(HttpServletRequest httpServletRequest) {  
        this.request=httpServletRequest;  
    }  
  
    public void setServletContext(ServletContext servletContext) {  
        this.servletContext=servletContext;  
    }  
}  

[java] view plain copy
<%@ taglib prefix="s" uri="/struts-tags" %>  
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>  
  
<%@ page contentType="text/html;charset=UTF-8" language="java" isELIgnored="false" %>  
  
  
    Title  
  
  

Welcome

<%--" />--%> <%-- --%> <%----%>

你可能感兴趣的:(Action如何去使用session request ,application)