上下文管理者(ServletContext)

2023-07-25

作用
1.获取全局初始化参数
2.资源共享(servlet通信) 能让上下文呢的Servlet相互关联起来
3.获取资源文件

生命周期
创建
服务器启动的时候会为每个项目创建一个servletContext上下文对象,
servleContext是项目的一个引用

销毁
在服务器关闭或者移除项目的时候servletContext销毁

获取方法
1.getservletConfig.getServletContext()
2.getServletContext()

常用API
1获取指定的项目初始化参数
String getInitParameter(String name)

2.获取项目所有初始化参数名称
Enumeration getInitParameterNames()

3.获取一个资源在服务器上的路径
String getRealPath(String filepath)

4.以流的方式返回一个文件
InputStream getResourceAsStream(String filepath)

5.获取一个文件的mime类型 text/html image/gif
String getMimeType(String 文件名)

6.设置(两个servlet之间的数据交换)
setAttribute(String name,Object value)

7.获取指定的属性值
getAttribute(String name)

8.移除指定的属性
removeAttribute(String name)

response(响应)
1.设置一个字符串形式的响应头
setHeader(String name,String value)
2.设置一个整型的响应头
setIntHeader(String name,int value)
3.追加一个整型的响应头
addIntHeader(String name,int value)

location:重定向
demo2 进入后 显示302 直接跳转到 demo3 这里就是重定向
1.地址栏会放生改变
2.发生两个请求
3.项目名字 + 内部路径

refresh:定时刷新
<meta http-equiv="refresh" content="3;url=/day14/2.html">

响应中文乱码 这里注意 要放到最前面
response.setHeader("content-type","文件的mime类型;charset=utf-8");

文件下载
1.超链接方式
浏览器能解析的类型直接打开,不能解析的类型就会下载

2.代码方式 不管认不认识 都下载
两个头一个流

上下文管理者(ServletContext)的相关教程结束。