您的位置:首页 > 编程语言 > Java开发

java web过滤器

2016-04-25 20:37 381 查看
过滤器:是一个服务器端的组件,它可以截取用户端的请求与响应信息,并对这些信息过滤

过滤器的生命周期:实例化、初始化/过滤、销毁

init()这是过滤器的初始化方法,Web容器创建过滤器实例后将调用这个方法。这个方法中

可以读取web.xml文件中过滤器的参数。

doFilder()这个方法完成实际的过滤操作。这个地方是过滤器的核心方法。当用户请求访问

与过滤器关联的URL时,Web容器将先调用过滤器的doFilter方法

FilterChain参数可以调用chain.doFilter方法,将请求传给下一个过滤器(或目标资源),

或利用转发,重定向将请求转发到其他资源。

destroy()Web容器在销毁过滤器实例前调用该方法,在这个方法中可以释放过滤器占用的

资源。

过滤器的分类

Servlet2.5 REQUREST 用户直接访问页面时,Web容器将会调用过滤器

FORWORD 目标资源是通过RequestDispatcher的forward访问时,该过滤器将被调用

INCLUDE 目标资源是通过RequestDispatcher的include方法调用时,过滤器将被调用

ERROR 目标资源是通过声明式异常处理机制调用时,过滤器将被调用

Servlet3.0 ASYNC 支持异步处理

@WebFilter用于将一个类声明为过滤器,该注解将会在部署时被容器处理,

容器将根据具体的属性配置将相应的类部署为过滤器

过滤器应用场景

1 对用户请求进行统一认证

2 编码转换

3 对用户发送的数据进行过滤替换

4 转换图像格式

5 对响应的内容进行压缩
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: