用途:
1)想让当前的Servlet读取一些在web.xml文件配置的初始化参数时,
可以使用ServletConfig对象,他是Servlet运行时的配置对象。
2)init(ServletConfig config)方法由web容器调用,调用时会传入与容器相关的ServletConfig接口的实现
所以此对象需要init(ServletConfig config)的配合使用
一】web.xml部分
需要加入标签
<init-param>
<param-name>参数名字</param-name>
<param-value>参数的值</param-value>
</init-param>
eg:
<servlet>
<servlet-name>Demo5</servlet-name>
<servlet-class>cn.itcast.web.servlet.Demo5</servlet-class>
<init-param>
<param-name>num</param-name>
<param-value>12101020504</param-value>
</init-param>
<init-param>
<param-name>tel</param-name>
<param-value>18381330428</param-value>
</init-param>
<init-param>
<param-name>charset</param-name>
<param-value>utf-8</param-value>
</init-param>
<load-on-startup>5</load-on-startup>/作用:部署时就加载,不用等到客户端访问请求时才加载。
</servlet>
二】ServletConfig接口:
1)重点方法:
1》根据web.xml文件中的<Servlet>标签下的<init-param>标签中的标签名获得标签值
String getInitParameter(String name);
2》获得web.xml文件中<servlet>标签下的<init-param>标签下的所有标签的标签名,以此遍历标签
Enumeration getInitParameterNames();
3》
eg:
方法一: String getInitParameter(String name);方法
String number = config.getInitParameter("num");
String tel = config.getInitParameter("tel");
System.out.println("number = " + number);//number = 12101020504
System.out.println("tel = " + tel);//tel = 18381330428
方法二: Enumeration getInitParameterNames()方法
Enumeration en = config.getInitParameterNames();
while(en.hasMoreElements()){
String str = (String) en.nextElement();
System.out.println(str + "= " + config.getInitParameter(str));
}