1.1过滤器概述
1.1.1什么是过滤器?
Servlet技术规范中, 定义了Servlet、Filter、Listener三门技术, 其中Filter也叫做过滤器,通过过滤器技术,开发人员可以实现用户在访问某个资源之前或之后,对访问的请求和响应进行拦截,从而做一些相关的处理。
总结:
所谓的过滤器, 就是拦截用户对资源的访问
一个过滤器可以拦截多个资源, 一个资源也可以配置多个过滤器进行拦截
其实所谓的拦截, 就是将代表请求的request对象和代表响应的response对象拦截下来,拦截下来后:
(1)控制是否允许访问 – 用户登陆之后才能查看自己的页面
(2)在访问资源之前或之后做一些处理 比如: 全站乱码解决
1.2开发过滤器
1.2.1开发过滤器的步骤
Servlet API中提供了一个Filter接口, 开发web应用时, 如果编写一个类实现了这个接口, 则这个类就是一个过滤器
(1)写一个类实现Filter接口, 并实现其中的方法
(2)在web应用的web.xml中配置过滤器
1.2.2Filter生命周期
当服务器启动时, web应用加载后会立即创建出当前web应用中的所有的Filter对象, 创建出来后, 立即调用init方法进行初始化出操作. 从此以后这个Filter对象一直驻留在内存中为后续所拦截的请求服务, 每次过滤到对资源的访问时, 都会执行doFilter这个方法进行拦截处理, 直到服务器关闭或者web应用移出容器为止, 随着web应用的