SSH 登录拦截器(过滤器)!

来源:互联网 发布:java计算器功能结构图 编辑:程序博客网 时间:2024/06/02 03:27
import java.io.IOException;import javax.servlet.Filter;import javax.servlet.FilterChain;import javax.servlet.FilterConfig;import javax.servlet.ServletException;import javax.servlet.ServletRequest;import javax.servlet.ServletResponse;import javax.servlet.annotation.WebFilter;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import javax.servlet.http.HttpSession;import com.hlx.entity.Depts;//必须进行登录!否则拦截!@WebFilter(filterName = "LoginFilter", urlPatterns = "*.jsp")public class LoginFilter implements Filter {@Overridepublic void destroy() {// TODO Auto-generated method stub}@Overridepublic void doFilter(ServletRequest req, ServletResponse resp,FilterChain chain) throws IOException, ServletException {// 请求对象HttpServletRequest request = (HttpServletRequest) req;// 响应对象HttpServletResponse response = (HttpServletResponse) resp;// 会话对象HttpSession session = request.getSession(true);// 请求路径String url = request.getRequestURI();System.out.println(url);// 获得对象Depts dept = (Depts) session.getAttribute("depts");if (dept == null && url.indexOf("login.jsp") == -1) {String location = "login.jsp";request.getRequestDispatcher(location).forward(request, response);System.out.println("成功拦截到入侵网站后台   :  " + url);//清空缓存response.setHeader("Cache-Control", "no-store");response.setDateHeader("Expires", 0);response.setHeader("Pragma", "no-cache");} else {chain.doFilter(request, response);}}@Overridepublic void init(FilterConfig arg0) throws ServletException {// TODO Auto-generated method stub}}

原创粉丝点击