LoginFilter类:
public void destroy() {
}
public void doFilter(ServletRequest sRequest, ServletResponse sResponse,
FilterChain filterChain) throws IOException, ServletException{
HttpServletRequest request = (HttpServletRequest) sRequest;
HttpServletResponse response = (HttpServletResponse) sResponse;
HttpSession session = request.getSession();
String url=request.getServletPath();
String contextPath=request.getContextPath();
if(url.equals("")) url+="/";
if((url.startsWith("/")&&!url.startsWith("/login"))){//若访问后台资源 过滤到login
String user=(String)session.getAttribute("username");
if(user==null){//转入管理员登陆页面
response.sendRedirect(contextPath+"/login.jsp");
return;
}
}
filterChain.doFilter(sRequest, sResponse);
}
public void init(FilterConfig arg0) throws ServletException {
}
web.xml:
loginFilter
com.gx.utils.LoginFilter
targetFilterLifecycle
true
loginFilter
/*
还没有登录判断就跳转到LoginFilter类里面了,