过滤器

JavaWeb三大主键:

Servlet,Listener(2个感知监听器不需要配置),Filter

都需要在web.xml中进行配置。

2. 过滤器
它会在一组资源(jsp、servlet、.css、.html等等)的前面执行!
它可以让请求得到目标资源,也可以不让请求达到!
* 过滤器有拦截请求的能力!

 

过滤器如何编写

1. 写一个类实现Filter接口
2. 在web.xml中进行配置

Filter接口

void init(FilterConfig)
* 创建之后,马上执行;Filter会在服务器启动时就创建!
void destory()
* 销毁之前执行!在服务器关闭时销毁
void doFilter(ServletRequest,ServletResponse,FilterChain)
* 每次过滤时都会执行

 

Filter是单例的!

web.xml
<filter>
<filter-name>xxx</filter-name>
<filter-class>cn.itcast.web.filter.AFitler</fitler-class>
</servlet>
<fitler-mapping>
<filter-name>xxx</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

-------------------------------------------

FilterConfig-->与ServletConfig相似
* 获取初始化参数:getInitParameter()
* 获取过滤器名称:getFilterName()
* 获取appliction:getServletContext()

-------------------------------------------

FilterChain
* doFilter(ServletRequest, ServletResponse):放行!
放行,就相当于调用了目标Servlet的service()方法!

 

--------------------------------------------

 

posted @ 2017-04-20 20:47  贱贱的小帅哥  阅读(119)  评论(0编辑  收藏  举报