Filter实现简单权限控制
一、描述
我们在浏览一些网站经常有这个情况,没有登录时是不允许我们访其主页的,只有登录过后才能访问。
二、原理
(1)登录时将登录的账号密码保存到cookie中,下次访问时携带账号和密码,过滤器中进行校验。
(2)用户没有登录直接访问主页时,要跳转到登录页面。
(3)登录过滤器不对登录页面进行过滤。
三、实现
我们在LoginFilter中对非登录页面的其他jsp都会进行过滤,判断cookie中是否携带了account和pwd,如果有这两个数据表示之前登录过,那么对数据进行校验,正确的话就进行下一个操作,否则的话,跳转到登录界面。
package filter;
import javax.servlet.*;
import javax.servlet.annotation.WebFilter;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
@WebFilter(filterName = "LoginFilter", urlPatterns = "*.jsp", dispatcherTypes = {
})
public class LoginFilter implements Filter {
public void destroy() {