四大作用域范围

  • Post author:
  • Post category:其他


1、生命周期:当Web应用被加载进容器时创建代表整个web应用的ServletContext对象,当服务器关闭或Web应用被移除时,ServletContext对象跟着销毁。

2、作用范围:整个Web应用。

3、作用:

1)在不同Servlet 之间转发

this.getServletContext().getRequestDispatcher(“/servlet/Demo10Servlet”).forward(request,方法执行结束,service就会返回到服务器,再有服务器去调用目标servlet,其中request会重新创建,并将之前的request的数据拷贝进去。

2)读取资源文件。

a、由于相对路径默认相对的是java虚拟机启动的目录,所以我们直接写相对路径将会是相对于tomcat/bin目录,所以是拿不到资源的。如果写成绝对路径,当项目发布到其他环境时,绝对路径就错了。

b、为了解决这个问题ServletContext提供了:

this.getServletContext().getRealPath(“/1.properties”),给进一个资源的虚拟路径,将会返回该资源在当前环境下的真实路径。

this.getServletContext().getResourceAsStream(“/1.properties”),给一个资源的虚拟路径返回到该资源真实路径的流。

c、当在非servlet下获取资源文件时,就没有ServletContext对象用了,此时只能用类加载器

class



版权声明:本文为IT4167555原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。