1、获取ServletContext对象:
ServletContext sc = this.getServletContext();
2、作用:
*1、获取全局初始化参数(点击查看)
sc.getInitParameter(name)
*2、获取文件的MIME类型(获取文件的格式)
// 2.1设置Content-Type头
String type = this.getServletContext().getMimeType(filename);
response.setHeader("Content-Type", type);
*3、作为域对象来存储数据(点击查看)
ServletContext是一个域对象
*作用范围:整个web工程
*创建:服务器启动的时候,tomcat服务器为每个web项目创建一个单独的ServletContext对象
int count = 0;
this.getServletContext().setAttribute("count", count); //设值
int count = (int) this.getServletContext().getAttribute("count"); //取值
*4、获取Web项目下的文件(点击查看)
// 方式1: getResourceAsStream, 返回的是字节流
ServletContext sc = this.getServletContext();
InputStream is = sc.getResourceAsStream("文件路径"); //路径必 须是绝对路径
// 方式2: getRealPath,返回的是磁盘绝对路径
ServletContext sc = this.getServletContext();
String realPath = sc.getRealPath("文件路径"); //路径必须是绝对路径
InputStream is = new FileInputStream(realPath);
// 方式3: 类的加载器,只能加载src路径下的文件
InputStream iStream = 当前类.class.getClassLoader().getResourceAsStream("文件路径");