前言
为了避免在没有登录的情况下也可以通过路径访问到所有页面, 如果在每一个需要请求的资源里面都通过Session去判断有没有登录的用户对象就需要书写大量的判断代码,此时就可以用到Filter过滤器
作用
让请求的某些资源在之前或之后经过过滤器,就可以把请求某些资源都需要做的事都放在过滤器里面,只需要写一次,起到代码重用的作用。
使用
创建 fileter包----Web Filter类
取类名点ok
在urlPatterns里面配置哪些请求需要经过过滤器(必须要有' / ')
类里面有三个自带的方法,在doFilter方法里面写代码
拿到Session进行判断是否登陆过,未登录重定向到登录页面,登陆过便放行
在启动类添加@ServltComponentScan注解
补充:
urlPattern几种配置方式:
-
精确匹配: /admin.html /insertBanner.html
-
路径匹配: /user/* /product/* (路径里面包含user product都会被匹配)
-
后缀匹配: *.jpg *.html *.xxx
-
全部匹配: /*