过滤器的概念
Java中的Filter 并不是一个标准的Servlet ,它不能处理用户请求,也不能对客户端生成响应。
主要用于对HttpServletRequest 进行预处理,也可以对HttpServletResponse 进行后处理。
过滤器作用
- 在HttpServletRequest 到达Servlet 之前,拦截客户的HttpServletRequest ;
- 根据需要检查HttpServletRequest ,也可以修改HttpServletRequest 头和数据;
- 在HttpServletResponse 到达客户端之前,拦截HttpServletResponse ;
- 根据需要检查HttpServletResponse ,可以修改HttpServletResponse 头和数据。
过滤器编写步骤
-
编写一个java类,实现Filter接口,并实现其中的所有方法
-
在web.xml文件中配置Filter
<!-- 过滤器配置 -->
<filter>
<!-- 内部名称 -->
<filter-name>HelloFilter</filter-name>
<!-- 类全名:包+简单类名 -->
<filter-class>org.newboy.filter.HelloFilter</filter-class>
</filter>
<!-- 过滤器映射配置 -->
<filter-mapping>
<!-- 内部名称名称,和上面的名称保持一致! -->
<filter-name>HelloFilter</filter-name>
<!-- 需要拦截的路径 -->
<url-pattern>/*</url-pattern>
</filter-mapping>
- 把Filter部署到tomcat服务器运行