ServletConfig对象与ServletContext对象的区别

ServletConfig对象与ServletContext对象的区别

或者说:

servlet中getServletConfig()方法与getServletContext()方法的区别

 

一、 ServletConfig对象

        getServletConfig() 方法获得ServletConfig对象


      在servlet初始化时,容器传递进来一个ServletConfig对象并保存在servlet实例中,该对象允许访问两项内容:初始化参数和ServletContext对象,前者通常由容器在文件中指定,允许在运行时向sevrlet传递有关调度信息,比如说getServletConfig().getInitParameter("debug")后者为servlet提供有关容器的信息。

getServletConfig()方法可以让servlet在任何时候获得该对象及配置信息。

 

二、 ServletContext对象

getServletContext() 方法获得ServletContext对象
 

 一个servlet可以使用getServletContext()方法得到web应用的servletContext 
即而使用getServletContext的一些方法来获得一些值 
比如说getServletContext().getRealPath("/")来获得系统绝对路径 
getServletContext().getResource("WEB-INF/config.xml")来获得xml文件的内容

 

 

1、获取配置的参数有区别:

getServletContext()取得的是 <context-param>配置的参数
而getServletConfig()取得的是 <servlet> <init-param>配置的参数

          

 

2、作用域不同

getServletContext()应用于整个web App,而getServletConfig()仅应用于当前Servlet。

但是ServletConfig对象拥有ServletContext的引用。所以可以通过getServletConfig()来获得web App的

你可能感兴趣的:(servletContext)