Filter一(Filter 概念以及Filter的作用)

Filter概念(Filter的作用)



Filter :过滤器从名字可以看出来,他就是过滤我们的请求他和serlvet很相似,在serlvet处理之前我们可以用filter来进行处理,同理在servlet处理完后,我们也可以处理响应。
但是,在到达servlet的时候servlet自己并不知道,他的前面经过了这些过滤器。这样我们就可以做很多的事情了,这是不是有点像我们的AOP的概念。


Filter的作用



serlvet处理之前

      1.权限的验证(判断是否登录)
2.请求的格式化的处理(比如request中的字符的编码)

3.建立日志


servlet处理之后

1.压缩响应流
2.追加或者是修改响应流
3.创建一个完全不同的响应

filter的是实现Filter这个接口,一般要重写里面的三个方法init(FilterConfig filerConfig),destory(),doFilter(ServletRequest serlvetRequest, ServletResponse serlvetResponse,FilterChain filterChain);

1.init方法中有FilterConfig 对象,这个对象会保存起来,在后面的两个方法中使用,filterConfig 和 servletConfig 一样都是我们在DD中配置的参数,可以通过方法去获取里面配置的参数。

2.doFilter(ServletRequest serlvetRequest, ServletResponse serlvetResponse,FilterChain filterChain); 也是我们进行拦截的方法,也是处理我们的请求,响应的地方

3.ServletRequest ,ServletResponse 两个对象不是Http的 ,但是他们是HttpServletRequest和HttpServletResponse的超类,所以我们可以向下转型

 filter也是有他的生命周期的和Serlvet类似,init 由我们的容器来调用,doFilter 是一个Url地址匹配到的时候,我们会调用的方法,destory 是我们容器销毁的时候调用的方法。同样一个jvm中只会有一个这种filter的实例。


  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值