代表整个web应用(项目),可以和程序的容器(服务器软件)来通信
//ServletContext对象的获取 //方式1:通过request对象获取 ServletContext servletContext1 = req.getServletContext(); //方式2:通过HttpServlet获取 ServletContext servletContext2 = getServletContext(); System.out.println(servletContext1 == servletContext2);//true
1.获取MIME类型
2.域对象:共享数据
3.获取文件的真实路径(服务器路径)
方法:String 个体Mime Type(String file)
此方法是根据文件的扩展名来获取MIME类型的
ServletContext servletContext1 = req.getServletContext(); String filename = "a.jpg"; String mimeType = servletContext1.getMimeType(filename); System.out.println(mimeType);
方法:
setAttribute(String name,Object value) getAttribute(String name) removeAttribute(String name)
ServletContext对象范围:所有用户所有请求的数据
生命周期:服务器启动到服务器关闭
因此此对象中尽量不要存太多数据,占内存!
在Servlet1中设置的,可以在Servlet2中获取
方法:
String getRealPath(String path);
ServletContext servletContext1 = req.getServletContext(); System.out.println(servletContext1.getRealPath("/b.txt")); System.out.println(servletContext1.getRealPath("/WEB-INF/classes/a.txt")); System.out.println(servletContext1.getRealPath("/WEB-INF/c.txt"));
只要知道web目录对应根目录
src中的java源文件会变成\WEB-INF\classes下的文件即可