1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
| package com.example.demo.myFilter;
import org.springframework.stereotype.Component;
import javax.servlet.*; import javax.servlet.annotation.WebFilter; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import java.io.IOException;
(value = "/*") @Component public class implements Filter { @Override public void init(FilterConfig filterConfig) throws ServletException { System.out.println("init,在服务启动的时候被调用"); }
@Override public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { HttpServletRequest req = (HttpServletRequest) request; String path = req.getRequestURI(); HttpSession session = req.getSession(); if (req.getParameter("username") != null){ chain.doFilter(request, response); }else { System.out.println(path); if (path.equals("/login_page")) { chain.doFilter(request, response); } else { HttpServletResponse resp = (HttpServletResponse) response; resp.sendRedirect("login_page"); } }
}
@Override public void destroy() { System.out.println("destroy,在停止服务程序的时候会调用"); } }
|