ServletConfig
ServletConfig是一个接口,它代表的是Servlet的配置信息,对应着web.xml文件中的<servlet>标签。
在调用init方法之前,服务器已经根据当前Servlet在web.xml的配置信息创建了一个ServletConfig对象,最后在调用init()方法时将该对象作为参数传递给init()方法。
web.xml文件中每一个<servlet>元素都对应一个ServletConfig对象。
l ServletConfig实例是由Tomcat服务器创建,然后作为参数通过init()方法传递给Servlet;
l ServletConfig中封装的是Servlet的配置信息,可以通过它来获取web.xml文件中<servlet-name>标签的内容(通过getServletName()方法)等其他配置信息。
l 一个Servlet类对应一个ServletConfig对象
ServletConfig接口有四个抽象方法,如下:
方法名 |
方法说明 |
String getInitParameter(String name) |
该方法是通过参数名获取Servlet在web.xml文件中配置的初始化参数。 |
Enumeration getInitParameterNames() |
该方法是获取Servlet在web.xml文件中配置的所有初始化参数的名称。 |
ServletContext getServletContext() |
该方法是获取ServletContext对象,后面会详细讲解该对象。 |
String getServletName() |
该方法是获取Servlet在web.xml文件中配置的名称,即<servlet-name>元素的内容。 |
示例如下:在init()方法中获取初始化参数
@Override
publicvoid init(ServletConfig servletConfig) throws ServletException {
System.out.println("init()......");
System.out.println("initparam name =:"+servletConfig.getInitParameter("name"));
System.out.println("servletname is:"+servletConfig.getServletName());
//获取所有的初始化参数名称
Enumeratione=servletConfig.getInitParameterNames();
while(e.hasMoreElements()){//遍历所有初始化参数名称
System.out.println("initParamname:");
System.out.println(e.nextElement());
}
}
ServletConfig对象最常用的方法是getServletContext(),我们在很多时候都会使用ServletContext。