簡介
? ? Web應用的Application域的實現是通過ServletContext對象實現的。整個Web應用程序的所有資源共享這個域。生命周期與Web應用程序相同,即當前Web應用程序啟動時(以服務器視角而非訪客視角)出生,Web應用服務程序關閉時停止。
? ? 通過ServletContext對象可以實現在整個Web應用的動態資源之間共享數據。例如在AServlet中向ServletContext對象中保存一個值,然后在BServlet中就可以獲取這個值,這就是共享數據。
獲取ServletContext對象
? ? 在原始的Servlet接口中,獲取ServletContext對象的方法是在init(ServletConfig config)方法中,通過傳過來的對象config中的getServletContext()方法來獲取。
public class MyServlet implements Servlet {......public void init(ServletConfig config) { ServletContext context = config.getServletContext();}......
}
? ? 在例如HttpServlet等一系列實現類中,如果有其他實現,應當查看源碼和說明文檔。比如在HttpServlet中,已經有實現獲取ServletContext對象的方法:,我們直接通過 this.方法 來獲取即可:
public class MyServlet extends HttpServlet {public void doGet(HttpServletRequest request, HttpServletResponse response) { ServletContext context = this.getServletContext();}
}