精准配置
<url-pattern>/别名</url-pattern>(可以多个)
注意:"/"是必须声明的,别名不可以用中文,只从配置方式可以配置多个
<!--配置Servlet信息-->
<servlet>
<!--servlet的名称, 要见名知意,唯一-->
<servlet-name>hello</servlet-name>
<!--servlet的定位, 要求是包名.类型 全限定路径-->
<servlet-class>com.lin.servlet.HelloServlet</servlet-class>
</servlet>
<!--配置servlet映射, 跟用户访问路径之间的映射-->
<servlet-mapping>
<servlet-name>hello</servlet-name>
<!--配置用户访问路径-->
<!--精确匹配: 要求必须以/开头, /代表项目根路径-->
<url-pattern>/hello2.html</url-pattern>
</servlet-mapping>
模糊配置
*表示任意个数的任意字符
<url-pattern>*.后缀名</url-pattern>
注意:
所有以指定的后缀名结尾的请求都会调用该servlet进行处理
作用:
进行模块化开发的划分
<!--配置Servlet信息-->
<servlet>
<!--servlet的名称, 要见名知意,唯一-->
<servlet-name>hello</servlet-name>
<!--servlet的定位, 要求是包名.类型 全限定路径-->
<servlet-class>com.lin.servlet.HelloServlet</servlet-class>
</servlet>
<!--配置servlet映射, 跟用户访问路径之间的映射-->
<servlet-mapping>
<servlet-name>hello</servlet-name>
<!--配置用户访问路径-->
<!--模糊匹配: 多个路径-->
<!--匹配固定后缀的路径-->
只要是.llin 为结尾的路径就会跳转执行,注意没有/开头
<url-pattern>*.llin</url-pattern>
</servlet-mapping>
拦截请求
<url-pattern>/*</url-pattern>
注意:
会拦截所有类型的请求,包括静态资源请求(cSS、js、图片等)和jsp请求。
<!--配置Servlet信息-->
<servlet>
<!--servlet的名称, 要见名知意,唯一-->
<servlet-name>hello</servlet-name>
<!--servlet的定位, 要求是包名.类型 全限定路径-->
<servlet-class>com.lin.servlet.HelloServlet</servlet-class>
</servlet>
<!--配置servlet映射, 跟用户访问路径之间的映射-->
<servlet-mapping>
<servlet-name>hello</servlet-name>
<!--配置用户访问路径-->
<!--模糊匹配: 多个路径-->
<!--匹配所有路径-->
<url-pattern>/*</url-pattern>
</servlet-mapping>
匹配固定前缀的路径
<url-pattern>/lin/*</url-pattern>
注意:
会拦截处理所有Servlet的别名以lin开头的路径的请求
<!--配置Servlet信息-->
<servlet>
<!--servlet的名称, 要见名知意,唯一-->
<servlet-name>hello</servlet-name>
<!--servlet的定位, 要求是包名.类型 全限定路径-->
<servlet-class>com.lin.servlet.HelloServlet</servlet-class>
</servlet>
<!--配置servlet映射, 跟用户访问路径之间的映射-->
<servlet-mapping>
<servlet-name>hello</servlet-name>
<!--配置用户访问路径-->
<!--模糊匹配: 多个路径-->
<!--匹配固定前缀的路径-->
不能和固定后缀的方法混用
<url-pattern>/lin/*</url-pattern>
</servlet-mapping>
匹配除了jsp以外的所有路径
<url-pattern>/</url-pattern>
注意:
拦截处理访问jsp的请求
<!--配置Servlet信息-->
<servlet>
<!--servlet的名称, 要见名知意,唯一-->
<servlet-name>hello</servlet-name>
<!--servlet的定位, 要求是包名.类型 全限定路径-->
<servlet-class>com.lin.servlet.HelloServlet</servlet-class>
</servlet>
<!--配置servlet映射, 跟用户访问路径之间的映射-->
<servlet-mapping>
<servlet-name>hello</servlet-name>
<!--配置用户访问路径-->
<!--模糊匹配: 多个路径-->
<!--匹配除了jsp以外的所有路径-->
<url-pattern>/</url-pattern>
</servlet-mapping>
完整代码
<?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>
<!--servlet的名称, 要见名知意,唯一-->
<servlet-name>hello</servlet-name>
<!--servlet的定位, 要求是包名.类型 全限定路径-->
<servlet-class>com.bjsxt.servlet.HelloServlet</servlet-class>
</servlet>
<!--配置servlet映射, 跟用户访问路径之间的映射-->
<servlet-mapping>
<servlet-name>hello</servlet-name>
<!--配置用户访问路径-->
<!--精确匹配: 要求必须以/开头, /代表项目根路径-->
<url-pattern>/hello2.html</url-pattern>
<!--模糊匹配: 多个路径-->
<!--匹配固定后缀的路径-->
只要是.llin 为结尾的路径就会跳转执行,注意没有/开头
<url-pattern>*.llin</url-pattern>
<!--匹配固定前缀的路径-->
不能和固定后缀的方法混用
<url-pattern>/lin/*</url-pattern>
<!--匹配除了jsp以外的所有路径-->
<url-pattern>/</url-pattern>
<!--匹配所有路径-->
<url-pattern>/*</url-pattern>
</servlet-mapping>
</web-app>
网站声明:如果转载,请联系本站管理员。否则一切后果自行承担。
加入交流群
请使用微信扫一扫!