1.1. 介绍:
ServletContext官方叫servlet上下文。服务器会为每一个工程创建一个对象,这个对象就是ServletContext对象。这个对象全局唯一,而且工程内部的所有servlet都共享这个对象。所以叫全局应用程序共享对象。
1.2. 作用:
- 是一个域对象
- 可以读取全局配置参数
- 可以搜索当前工程目录下面的资源文件
- 可以获取当前工程名字(了解)
1.2.1.servletContext是一个域对象:
1.2.1.1.域对象介绍:
域对象是服务器在内存上创建的存储空间,用于在不同动态资源(servlet)之间传递与共享数据。
1.2.1.2.域对象方法:
凡是域对象都有如下3个方法:
1.2.1.3.域对象功能代码:
域对象存储数据AddDataServlet代码:
获取域对象数据GetDataServlet代码:
servletContext存储数据特点:
全局共享,里面的数据所有动态资源都可以写入和获取
服务器启动的时候创建,服务器关闭的时候销毁,因为这是全局应用程序对象,全局共享对象。
1.2.2.可以读取全局配置参数:
1.2.2.1.servletContext读取全局参数核心方法
getServletContext().getInitParameter(name);//根据指定的参数名获取参数值
getServletContext().getInitParameterNames();//获取所有参数名称列表
1.2.2.2. 实现步骤:
1 在web.xml中配置全局参数
2.在动态资源servlet里面使用servletcontext读取全局参数代码
1.2.3. 可以搜索当前工程目录下面的资源文件
1.2.3.1. 核心方法:
getServletContext().getRealPath(path),根据相对路径获取服务器上资源的绝对路径
getServletContext().getResourceAsStream(path),根据相对路径获取服务器上资源的输入字节流
1.2.4.可以获取当前工程名字:
1.2.4.1. 核心方法:
getServletContext().getContextPath();作用:获取当前工程名字
1.2.4.2. 代码: