ServletConfig是什么

2025-10-31 03:08:12

1、    ServletConfig是Servlet规范中的一个规则,它是一个接口.ServletConfig的两个实现类:GenericServlet,HttpServlet

   在编写Servlet时,ServletConfig对象是作为init方法的参数传入的

    Servlet对象是服务器创建的

    ServletConfig对象是服务器创建的

    init方法在执行时,传入ServletConfig对象是服务器完成的

    

    ServletConfig对象到底是什么?

    ServletConfig对象是它所对应的Servlet对象的相关配置信息

    每一个servlet对象都有一个ServletConfig对象和它相对应,ServletConfig对象在多个Servlet对象之间是不能共享的

   如果应用中有100个Servlet对象,就会有100个ServletConfig对象,Servlet对象和它的ServletConfig对象是一对一的关系

    常见的ServletConfig对象的方法

    getInitParameter(String name)   返回一个初始化变量的值

    getInitParameterNames()    Enumeration  返回servlet初始化参数的所有名称

    getServletContext()   获取ServletContext对象   后面的课程具体讲解ServletContext

    getServletName()   获取Servlet的name配置值

    ServletConfig是接口,它实际使用的实现类是org.apache.catalina.core.StandardWrapperFacade,在init方法中使用config对象实际就是使用多态,

    getInitParameter(String name)   返回一个初始化变量的值

    每一个servlet在配置时都可以指定多个初始化变量

    在配置文件web.xml中,可以为某一个servlet配置 初始化参数

语法

   <servlet>

      <servlet-name>HelloServlet</servlet-name>

      <servlet-class>servlet.HelloServlet</servlet-class>

      <init-param>

      <param-name>aaa</param-name>

      <param-value>111</param-value>

      </init-param>

      以上的配置信息 init-param 必须写在servlet注册信息中,必须写在servlet-class下

   </servlet>

   

 以上的初始化参数就是类似配置文件的功能:

 一个是解耦合

 一个使用配置文件实际上就是为了封装变化

    getInitParameterNames()   获取所有配置的初始化参数的名称

  Enumeration ee = config.getInitParameterNames();

String name = null;

while(ee.hasMoreElements()){

//遍历名称集合,输出每一个初始化参数的名称

//System.out.println(ee.nextElement());

name = (String) ee.nextElement();

System.out.println(name+":"+config.getInitParameter(name));

}

获取所有的初始化参数 ,并获取每一个初始化参数的值

    ServletConfig的主要作用

1、获取某个servlet的初始化参数

2、获取ServletContext

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢