package servletApi.action;

 

import java.util.Map;

import org.apache.struts2.interceptor.ApplicationAware;

import org.apache.struts2.interceptor.SessionAware;

import org.apache.struts2.interceptor.RequestAware;

import com.opensymphony.xwork2.ActionSupport;

 

public class ServletApi_IoC2_XxxAware extends ActionSupport implements

      ApplicationAware, SessionAware, RequestAware {

   private Map<String, Object> application;

   private Map<String, Object> session;

   private Map<String, Object> request;

 

   public void setApplication(Map<String, Object> application) {

      this.application = application;

   }

 

   public void setSession(Map<String, Object> session) {

      this.session = session;

   }

 

   public void setRequest(Map<String, Object> request) {

      this.request = request;

   }

 

   public String setValue() {

      application.put("userName", "存放在 application 中的 userName 吳永志");

      session.put("userName", "存放在 session 中的 userName 吳永志");

      request.put("userName", "存放在 request 中的 userName 吳永志");

      return "success";

   }

}



Struts 2 的 Servlet API

  1. 取值測試:(EL)
    request.userName: 存放在 request 中的 userName 吳永志 
    session.userName: 存放在 session 中的 userName 吳永志 
    application.userName: 存放在 application 中的 userName 吳永志

     
  2. 取值測試:(OGNL)
    request.userName: 存放在 request 中的 userName 吳永志
    session.userName: 存放在 session 中的 userName 吳永志
    application.userName: 存放在 application 中的 userName 吳永志







package servletApi.action;

 

import java.util.Map;

import javax.servlet.ServletContext;

import javax.servlet.http.HttpServletRequest;

import org.apache.struts2.interceptor.ServletRequestAware;

import org.apache.struts2.interceptor.SessionAware;

import org.apache.struts2.util.ServletContextAware;

import com.opensymphony.xwork2.ActionSupport;

 

public class ServletApi_IoC1_XxxAware extends ActionSupport implements ServletContextAware, SessionAware, ServletRequestAware {

   private ServletContext context;

   private Map<String, Object> session;

   private HttpServletRequest request;

 

   @Override //ServletContextAware

   public void setServletContext(ServletContext context) {

      this.context = context;

   }

 

   @Override //SessionAware

   public void setSession(Map<String, Object> session) {

      this.session = session;

   }

 

   @Override //ServletRequestAware

   public void setServletRequest(HttpServletRequest request) {

      this.request = request;

   }

  

   public String setValue() {

      context.setAttribute("userName", "存放在 ServletContext 中的 userName 吳永志");

      session.put("userName", "存放在 session 中的 userName 吳永志");

      request.setAttribute("userName", "存放在 request 中的 userName 吳永志");

      return "success";

   }

}



Struts 2 的 Servlet API

  1. 取值測試:(EL)
    request.userName: 存放在 request 中的 userName 吳永志 
    session.userName: 存放在 session 中的 userName 吳永志 
    application.userName: 存放在 ServletContext 中的 userName 吳永志

     
  2. 取值測試:(OGNL)
    request.userName: 存放在 request 中的 userName 吳永志
    session.userName: 存放在 session 中的 userName 吳永志
    application.userName: 存放在 ServletContext 中的 userName 吳永志



package servletApi.action;

 

import javax.servlet.ServletContext;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpSession;

import org.apache.struts2.ServletActionContext;

import com.opensymphony.xwork2.ActionSupport;

 

public class ServletApi_ServletActionContext extends ActionSupport {

 

   public String setValue() {

      HttpServletRequest request = ServletActionContext.getRequest(); // 取得HttpServletRequest

      request.setAttribute("userName", "存放在 request 中的 userName 吳永志");

 

      HttpSession session = request.getSession(); // 取得HttpSession

      session.setAttribute("userName", "存放在 session 中的 userName 吳永志");

 

      ServletContext context = ServletActionContext.getServletContext();  // 取得ServletContext

      context.setAttribute("userName", "存放在 ServletContext 中的 userName 吳永志");

 

      return "success";

   }

}



Struts 2 的 Servlet API

  1. 取值測試:(EL)
    request.userName: 存放在 request 中的 userName 吳永志 
    session.userName: 存放在 session 中的 userName 吳永志 
    application.userName: 存放在 ServletContext 中的 userName 吳永志

     
  2. 取值測試:(OGNL)
    request.userName: 存放在 request 中的 userName 吳永志
    session.userName: 存放在 session 中的 userName 吳永志
    application.userName: 存放在 ServletContext 中的 userName 吳永志
創作者介紹

學習筆記專區

乙方 發表在 痞客邦 PIXNET 留言(0) 人氣()