ServletConfig 接口和ServletContext 接口

来源:互联网 发布:淘宝卖家怎么关闭店铺 编辑:程序博客网 时间:2024/05/17 03:00
             
public interface ServletConfig{
    public String getInitParameter(String name);
    //这个方法返回一个包含Servlet指定的初始化参数的String。如果这个参数不存在,返加空值。
    public Enumeration getInitParameterNames();
    //这个方法返回一个列表String对象,该对象包括Servlet的所有初始化参数名。如果Servlet没有初始化参数,getInitParameterNames返回一个空的列表。
    public ServletContext getServletContext();
     //返回这个Servlet的ServletContext对象。
}

在servlet初始化时,容器传递进来一个ServletConfig对象并保存在servlet实例中,可以使用 getServletConfig()得到这个对象,该对象允许访问两项内容:初始化参数和ServletContext对象。

GenericServlet类 作为一个模板类提供默认实现, GenericServlet类的getInitParameter()方法实现就是this.getServletConfig().getInitParameter()。(这里的方法是你的Servlet类继承的来自GenericServlet的方法,可以写出getInitParameter()的样子,也可以直接用getServletConfig().getInitParameter(),也可以用this.getServletConfig().getInitParameter())。


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

getServletContext().getInitParameter()取得的是 <context-param>配置的参数。 

getServletConfig().getInitParameter()取得的是 <servlet> <init-param>配置的参数