Filter过滤要登录的页面(重要)

一、为什么要写过滤器,过滤页面?

  本人做了一个网站,目前还在开发。做过滤器的目的就是为了要过滤一些页面必需要用户登录之后才能看,主页什么的可以随便看,一旦涉及到要发布或评论什么信息,就必须要过滤用户的请求了,看他是否登录,没登录的话就让他登录之后进这些页面。

  写过滤器的目的就是这么个目的。

二、废话不少说,进入功能代码阶段。

  原先设计的过滤器代码:

    创建两个类:一个WebConfig.java,一个JzProjectGlobalFilter.java

    Webconfig.java:这个类主要配置过滤器,或者说是创建过滤器对象,你有几个过滤器就写几个方法,每个方法创建一个过滤器对象,如下:

      

   JzProjectGlobalFilter.java:写过滤器的内容。

    我在此过滤器里面写了一个List<String> list属性,算是用来存放要过滤的请求的url。比如说我现在要过滤的页面有:/taskAdd,/userInfo两个页面的url,用户在请求这两个url的时候必须要判断session中是否有登录用户,没有的话是不会给他访问这两个页面的,直接跳转到登录页面,让用户登录才能访问这两个地址

     JzProjectGlobalFilter.java类中过滤的内容代码就简单了:就是拿到当前请求的url去循环请求一下自己的list白名单中是否有此请求url,有的话判断一下有没有用户登录,没有用户登录直接跳转登录页面。如下:

。。。

原文地址:https://www.cnblogs.com/spll/p/10508907.html