
主要:实现一个Filter接口
init()、destroy() 原理、执行时机 同Servlet
配置过滤器,类似servlet
通过doFilter()处理拦截,并且通过chain.doFilter(request, response);放行
filter映射
<filter>
<filter-name>Myservlet</filter-name>
<filter-class>org.setudent.filter.MyFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>Myservlet</filter-name>
<url-pattern>/Myservlet</url-pattern>
</filter-mapping>
只拦截 访问Myservlet的请求
<url-pattern>/Myservlet</url-pattern>
拦截一切请求(每一次访问 都会被拦截)
<url-pattern>/*</url-pattern>
通配符
dispatcher请求方式:
REQUEST:拦截HTTP请求 get post
FORWARD:只拦截 通过 请求转发方式的请求
INCLUDE:只拦截拦截通过 request.getRequestDispatcher("").include() 、通过<jsp:include page="..." />此种方式发出的请求
ERROR:只拦截<error-page>发出的请求
过滤器中doFilter方法参数:ServletRequest
在Servlet中的方法参数:HttpServletRequest
过滤器链
可以配置多个过滤器,过滤器的先后顺序 是由 <filter-mapping>的位置 决定
本文深入解析了Filter接口在Servlet中的应用,包括初始化、销毁原理及执行时机。详细介绍了如何配置过滤器,利用doFilter()方法进行请求拦截,并通过chain.doFilter()放行请求。探讨了filter映射与dispatcher请求方式,以及过滤器链的概念。
2691

被折叠的 条评论
为什么被折叠?



