目录
ServletConfig:封装了Servlet 的配置信息,并且可以获取 ServletContext 对象
一、ServletConfig配置
1.1 配置初始化参数
<servlet>
<!--配置Serlvet的初始化参数。且节点必须在1oad- on-startup 节点的前面-->
<init-param>
<!--参数名-->
< param- name>user</param- name>
<!--参数值-->
< param-value>root</param- value>
</init-param>
<init- param>
<param- name > password</ param- name>
< param-value>1230</param-value>
</init-param>
<load-on- startup>-1</load-on- startup>
</serv1et>
1.2 获取初始化参数
> getInitParameter(String name): 获取指定参数名的初始化参数
> getInitParameterNames(): 获取参数名组成的Enumeration对象.
二、例子
我里直接用上一章《hualinux servlet 2.9:继承serlvet接口实现servlet(懂)》代码,把hello文件和相关的xml删除
下面的是hello配置,删除,不删除留着也行
<servlet>
<servlet-name>test</servlet-name>
<servlet-class>Hello</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>test</servlet-name>
<url-pattern>/hello</url-pattern>
</servlet-mapping>
2.1 web.xml配置
把原来的web.xml全部修改为:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
version="4.0">
<servlet>
<servlet-name>t1</servlet-name>
<servlet-class>T1</servlet-class>
<init-param>
<param-name>user</param-name>
<param-value>hua</param-value>
</init-param>
<init-param>
<param-name>pwd</param-name>
<param-value>123</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>t1</servlet-name>
<url-pattern>/t1</url-pattern>
</servlet-mapping>
</web-app>
注意:实际应用中用户名和密码是放在数据库中的,如mysql数据库
2.2 代码(ide输出中查看结果)
代码基础上做一下修改 只修init部分
@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();
System.out.println("name: "+name);
}
}
打开浏览器,在尾部添加t1,看到空白之后,再看IDE控制台如下: