目錄
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控制檯如下: