ServletContext
每个Web应用有一个ServletContext,在一个Web应用中部署的各个servlet和JSP都能访问同一个ServletContext
ServletContext接口的常用方法
1.获取初始化参数以及获取/设置属性
- getInitParameter(String)
- getInitParameterNames()
- setAttribute(String, Object)
- getAttribute(String)
- getAttributeNames(String)
- removeAttribute(String)
2.获取有关服务器/容器的信息
- getMajorVersion()
- getServerInfo()
3.其它
- getRealPath(String)
- getResourceAsStream(String)
- getRequestDispatcher(String)
- log(String)
获取ServletContext的方式:
getServletConfig().getServletContext().getInitParameter()
等同于:
this.getServletContext().getInitParameter()
ServletContextListener接口监听上下午初始化事件,可以得到上下文初始化参数,并在应用为客户提供服务之前运行一些代码
- contextInitialized 上下文初始化
- contextDestroyed 上下文撤销
例子,通过获取上下文出事话参数,创建一个对象
1.部署文件,添加一个上下文初始化参数和注册监听器
<context-param>
<param-name>breed</param-name>
<param-value>Great Dane</param-value>
</context-param>
<listener>
<listener-class>com.example.MyServletContextListener</listener-class>
</listener>
2.监听器类MyServletContextListener,获取上下文参数来创建对象
public class MyServletContextListener implements ServletContextListener {
@Override
public void contextDestroyed(ServletContextEvent event) {
System.out.println("contextDestroyed");
}
@Override
public void contextInitialized(ServletContextEvent event) {
System.out.println("contextInitialized");
ServletContext sc = event.getServletContext();
String dogBreed = sc.getInitParameter("breed");
Dog dog = new Dog(dogBreed);
sc.setAttribute("dog", dog);
}
}
本文详细介绍了ServletContext的概念及使用方式,包括如何获取初始化参数、设置属性、获取服务器信息等。同时提供了通过监听器实现上下文初始化参数读取的例子。
1575

被折叠的 条评论
为什么被折叠?



