ServletContext对象
什么是ServletContext对象
ServletContext代表的是一个web应用环境(上下文)对象,ServletContext对象
内部封装是该web应用的信息,ServletContext对象一个web只能有一个
web应用可以有多个Servlet对象
ServletContext生命周期?
创建:该web应用被加载
销毁:该web应用被卸载
如何获得ServletContext对象
第一种获取方式
ServletContext servletcontext = config.getServletContext();
第二个获取方式
ServletContext servletcontext =this.getServletContext();
ServletContext作用
1.获得web应用全局的初始化参数
要现在web.xml中配置
//获取servletContext对象
ServletContext context = this.getServletContext();
//1.获取初始化参数
String s = context.getInitParameter("driver");
2.获取web应用中任何资源的绝对路径(很重要)
方法:String path = context.getRealpath(相对于该WebContent(web应用)的相对地址);
在ContextServlet.java中有例子
/2.获取web应用中任何资源的绝对路径(很重要)
String path_A = context.getRealPath("a.txt");
String path_B = context.getRealPath("WEB-INF/b.txt");
String path_C = context.getRealPath("WEB-INF/classes/c.txt");
//只发布WebContent的内容
//src里边的源代码在WEB-INF中的classes
第二种读取文件绝对路径的方法
//在读取src(classes)下的资源使可以用同类加载器---专门加载classes下的文件的
//getResource()中的参数是一个相对地址 相对classes文件
String Path = ContextServlet.class.getClassLoader().getResource("c.txt").getPath();
3.ServletContext是一个域对象
什么是域对象?什么是域?
存储数据的区域就是域对象
ServletContext域对象的作用范围:整个web应用(所有的web资源都可以随意向
ServletContext域中存取数据,数据可以共享)
域对象的通用方法
setAtrribute(String name object obj)存
getAtrribute(String name)取
removeAtrribute(string name)删除
版权声明:本文为kaszxc原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。