传递初始化的参数值
(一) 涉及到生命周期方法的 init(ServletConfig)
其中的ServletConfig
表示配置对象
,可以获取配置信息
String getInitParameter(String var1);
- 根据 参数名 获取配置的对应的参数值 返回值是String 需要自己处理类型
Enumeration getInitParameterNames();
- 返回配置的所有参数名的 迭代器 。代码就可以遍历到所有参数名
(二) 涉及到web.xml中的子标签
<init-param>
<!--参数名,是键值对中的键-->
<param-name>count</param-name>
<!--参数值,是键值对中的值(只认识字符串,需要自己类型转换)-->
<param-value>20</param-value>
</init-param>
关于URL地址的配置:
1.它支持 具体的路径 (是服务器端路径) 。 必须以
斜杠
开头
2. 它支持*
通配符,匹配一组路径,必须以斜杠开头。比如: /demo/*
3. 它还支持 * 通配符指定的后缀名
匹配 ,必须不能以斜杠
开头。比如 :
整个项目中如果没有任何匹配的url-pattern时:
4. 其实被Tomcat默认
的Servlet所匹配
因为它的url-pattern 被设置为/
关于路径配置的优先级 1>2>3>4
比如:
/demo/abc.html
Servlet1
/demo/*
Servlet2
*.html
Servlet3
/
default(最后)
即 当用户访问的地址是 /demo/abc.html 时, 一定被 Servlet1 处理。
代码演示:
前端配置 param-name=count param-value=20:
<?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>DomoServlet</servlet-name>类名
<servlet-class>com.example.servlet.DomoServlet</servlet-class>//包名+类名
<init-param>
<param-name>count</param-name>
<param-value>20</param-value>
</init-param>
<load-on-startup>2</load-on-startup>//显示在后端控制台
</servlet>
<servlet-mapping>
<servlet-name>DomoServlet</servlet-name>
<url-pattern>/demo</url-pattern>
</servlet-mapping>
</web-app>
后端接收: