过滤器可以拦截request和response对象,进而操作里面的数据,
过滤器实际上是url路径级别的拦截(粗粒度)
1.Filter快速入门
- 创建一个类,实现Filter接口
- init()
- doFilter()
chain.doFilter(request,response) //放行
- destory()
- 过滤器的注册和路径映射
2.Filter的生命周期
- 服务器启动前会执行了Filter构造和初始化方法
- 每次访问被拦截的对象会执行doFilter()过滤的方法
- 关闭服务器会执行destory()销毁过滤器
3.FilterConfig对象
init(FilterConfig fConfig)
可以在注册的时候配置过滤器的初始化参数
获取初始化参数:
- 在初始化方法init()中获取
String initParameterValue = fConfig.getInitParameter("encoding")
- 在访问拦截对象的时候获取
首先设置私有的全局变量private filterConfig
然后在初始话方法init的将FilterConfig对象赋值给全局变量
this.filterConfig = fConfig
最后在doFilter中可以调用FilterConfig对象
filterConfig.getInitParameter("encoding")
近期评论