过滤器Filter原理及用法

顾名思义,过滤器就是对问题的筛选,选择应该通过的,挡住不应该通过的

比如常见的登录系统,只有登录后才能查看系统信息,就可以用过滤器Filter,通过判断是否登录,没有登陆的阻挡其查看内部信息

为什么要用过滤器?

项目开发中,经常会用到重复代码的实现。

1、请求每个servlet都要设置编码。

2、判断用户是否登录,只有登录了才有操作权限。

过滤器相关Api:

interface Filter 过滤器核心接口

1、init(FilterConfig filterConfig) 初始化方法,在服务器启动的时候就执行

2、doFilter(ServletRequest request, ServletResponse response, FilterChain chain) 过滤器拦截的业务逻辑处理

3、destroy() 销毁过滤器实例的时候调用

interface FilterChain 过滤链

doFilter(ServletRequest request, ServletResponse response)

执行下一个过滤器或放行(访问servlet)


案例一:用过滤器处理POST请求编码问题

@WebFilter(filterName = "encodingFilter", urlPatterns = "/*")


案例二:过滤器实现登录权限的判断

学生列表、班级列表等页面是不能直接访问的,只有登录后,才可以访问这些界面。


版权声明:本文为weixin_50897975原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。