ServletConfig 接口

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ServletConfig 接口相关的知识,希望对你有一定的参考价值。

一、ServletConfig 接口介绍:

  封装了Servlet的配置信息,并且可以获取ServletContext对象

  Servlet引擎将代表Servlet容器的对象(ServletContext)和Servlet的配置参数信息一并封装到一个称为ServletConfig的对象中,并在初始化Servlet实例对象时传递给该Servlet。

  ServletConfig接口则用于定义ServletConfig对象需要对外提供的方法,以便在Servlet程序中可以调用这些方法来获取有关信息。

  Servlet引擎调用Servlet的实例对象的init(ServletConfig config)方法将ServletConfig对象传递给Servlet。

  Servlet.getServletConfig()方法必须返回init(ServletConfig config)方法传递进来的这个ServletConfig对象的引用。

 

 

 

二、配置初始化参数(在web.xml的Servlet节点中)

    <!-- 配置Servlet的初始化参数  这个配置必须放在load-on-startup的前面-->
      <init-param>
          <param-name>User</param-name>
          <param-value>Root</param-value>
      </init-param>
      
      <init-param>
          <param-name>Pass</param-name>
          <param-value>1230</param-value>
      </init-param>

 

 

 

 

三、获取初始化参数(在init方法中)

  getInitParameterNames():获取参数名组成的Enumeration对象;

  getInitParameter(String name):获取指定参数名的初始化参数;

@Override
    public void init(ServletConfig ServletConfig) throws ServletException {
        System.out.println("init");
        String user = ServletConfig.getInitParameter("User");
        System.out.println("user:"+user);
        
        Enumeration<String> names = ServletConfig.getInitParameterNames();
        while(names.hasMoreElements()){
            String name = names.nextElement();
            String value = ServletConfig.getInitParameter(name);
            System.out.println(name+":"+value);
        }
    }

 

 

 

 

四、获取Servlet配置名称(在init方法中)

  getServletName():获取Servlet的配置名称,也就是web.xml里的<servlet-name>HelloServler</servlet-name>这个标签里的值

String ServlvetName = ServletConfig.getServletName();
System.out.println(ServlvetName);

 

以上是关于ServletConfig 接口的主要内容,如果未能解决你的问题,请参考以下文章

ServletConfig 接口

3.ServletConfig接口

06-javax.servlet.ServletConfig接口

ServletConfig接口默认是哪里实现的?

ServletConfig对象和ServletContext对象

学习笔记——Servlet底层源码分析;Servlet接口;ServletConfig接口;