上下文ServletContext 对象包含在 ServletConfig 对象中,ServletConfig 对象在初始化 servlet 时由 Web 服务器提供给 servlet,四大域之首,相当于一个全局变量
Servletcontext作用域是对于整个应用程序而言的,相对于所有的参数配置来说,serletConfig的主要作用也是来改善硬编码的。
……………..
charset
GB2312
……………..
例如我们我整个环境的字符集放到servletconfig参数中,这样整个环境的编码格式改变,我们不用去代码里修改,只用在参数配值中修改即可。
下面我们说下如何使用,
1.我们在web中相应的servlet中
configServlet
cn.bipt.edu.servlet.configServlet
charset
utf-8
这些参数这只会在这个servlet中才可以访问的到。
1.创建对应的servlet
我们看源码发现
public void init(ServletConfig config) throws ServletException {
this.config = config;
this.init();
}
在Httpservlet类的父类GeneralServlet实现servlet接口的初始化方法的时候,已经把servletconfig保存到了类的属性中,
public ServletConfig getServletConfig() {
return config;
}
同时提供了方法供其子类访问,所以我们可以
ServletConfig config = this.getServletConfig();来随时访问servletConfig,
ServletContext接口
上下文ServletContext 对象包含在 ServletConfig 对象中,ServletConfig 对象在初始化 servlet 时由 Web 服务器提供给 servlet,四大域之首,相当于一个全局变量
方法
public void setAttribute(String name, Object object)
将对象绑定到servlet上下文给定的属性值
public void removeAttribute(String name)
从上下文中移除给定的属性名
public Object getAttribute(String name)
通过属性名得到属性值
public ServletContext getContext(String uripath)
通过URL对象返回上下文对象
public String getContextPath()
得到上下文路径
public String getInitParameter(String name)
得到从web配值中的上下文对象
public String getRealPath(String path)
得到绝对地址路径
public RequestDispatcher getRequestDispatcher(String path)
得到请求转发
public java.net.URL getResource(String path)
得到指定路径资源的URL
通过这些方法可以快速存储使用servletConfig