Servlet入门_TWO之Filter的学习

Filter可认为是Servlet的一种加强版,它主要用于对用户请求进行预处理,也可以对HttpServletResponse进行后处理,是一个典型的处理链。

Filtert有如下几个用处:

①在HttpServletRequest到达servlet之前,拦截客户的HttpServletRequest。
②根据需要检查HttpServletRequest,也可修改HttpServletRequest的头和数据。
③在HttpServletResponse到达客户端之前,拦截HttpServletResponse
④根据需要检查HttpServletResponse,也可修改HttpServletResponse的头和数据。

Filter有如下几个种类:

①用户授权的Filter:Filter负责检查用户的请求,根据请求过滤用户非法请求。
②日志Filter:详细记录某些特殊的用户请求。
③负责解码的Filter:包括对非标准编码的请求解码。
④能改变XML内容的XSLT Filter 等
⑤Filter可负责拦截多个请求或响应;一个请求或响应也可被多个Filter拦截。

创建Filter只需两个步骤:

①创建Filter处理类
②web.xml 文件配置Filter。

补充

创建Filter必须实现javax.servlet.filter 接口。该接口定义了三个方法:
void init(FilterConfig config)用于完成Filter的初始化
void destroy()用于Filter的销毁,完成某些资源的回收。
void doFilter(ServletRequest request , ServletResponse response , FilterChain chain)实现过滤功能,该方法就是对每个请求及响应增加的额外处理。

doFilter()方法,实现该方法就可实现对用户请求进行预处理,也可实现对服务器响应进行后的处理——它们的分割线为是否调用了chain.doFilter(),执行该方法之前,即对用户请求进行处理;执行该方法之后,即对服务器响应进行后处理。

filter作用

这里写图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值