过滤器的原理:过滤器是一个中间组件,用于拦截源数据和目的数据之间的消消息,并且过滤二者之间传递的数据。
它的作用就是可以在请求到达服务器之前拦截下来进行相关操作,响应后也可以拦截下来进行操作。
过滤器涉及的API(类和接口):
接口有三个:
Filer:过滤器的核心必须实现它,其中有两个方法doFilter*()方法主要用来过滤的操作和init()方法中进行初始化操作。
FilterConfig:是配置文件的接口,可以获得配置文件里面的信息
FilterChain:它里面有doFilter(request,response)方法,它可以对过滤链传递。
四个包装器类:
ServletRequestWrapper、HttpServletRequestWrapper、ServletResponseWrapper、HttpServletResponseWrapper这几个类可以更改请求和响应的内容。
3过滤器的编写:先建一个过滤器实现Filter接口再doFilter(ServletRequest request,ServletResponse response, FilterChain fc)方法对过滤器的一些操作,最后在配置文件里配置过滤器的路径。
过滤器的生命周期包括初始化、过滤、销毁三个价段