一、什么是SercletContext对象?
ServletContext对象代表了整个Web应用,可以和程序的容器(也就是服务器)来通信
二、ServletContext对象的获取
1、通过request对象获取
request.getServletContext()
2、通过HttpServlet获取
this.getServletContext()
举例示范:
注意:这里我们使用两种方式获取的ServletContext对象是同一个对象,如图所示
三、ServletContext对象的功能
1、获取MIME类型
(1) 什么是MIME类型呢?
MIME类型就是在互联网通信过程中定义的一种文件数据类型
格式为:大类型/小类型
例如:上次我们说不用管的那个text/heml就是MIME类型;还有image/jpeg也是MIME类型
(2) 如何获取MIME类型呢?
使用String getMimeType(String file)方法获取
举例示范:
(3) 为什么能获取到对应MIME关系?
因为MIME关系全部存放在服务器中的web.xml文件当中,又因为ServletContext对象可以和Servlet应用通信,所以可以在servlet中通过ServletContext获取
2、域对象:用于共享数据
(1)有关方法
① setAttribut(String name,Object value):存放数据
② getAttribute(String name):获取数据
③ removeAttribute(String name):删除数据
(2)ServletContext对象的作用范围:
所有用户的所有请求
3、获取文件的真实路径(也就是服务器路径)
我们需要了解我们在创建了一个web项目的时候,我们的Tomcat服务器中有一份我们的web项目,我我们自己定义的工作空间同样也有一份web项目,而我们通过浏览器访问我们的web项目的时候,其实访问的是Tomcat服务器当中的web项目,所以Tomcat中的web项目的路径才是真实路径
(1)获取真实路径的方法
String getRealPath(String path)