package user;
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
public class CharacterFilter extends HttpServlet implements Filter {
/**
*
*/
private static final long serialVersionUID = 1L;
private FilterConfig filterConfig;
public void destroy() {
}
public void init(FilterConfig filterConfig) throws ServletException {
this.filterConfig = filterConfig;
}
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
HttpServletRequest req = (HttpServletRequest) request;
HttpServletResponse res = (HttpServletResponse) response;
String currentURL = req.getRequestURI();
String targetURL = currentURL.substring(currentURL.indexOf("/", 1));
// System.out.println("targetURL" + targetURL);
currentURL.length();
HttpSession session = req.getSession();
// System.out.println("session:" + session);
// System.out.println("session.getAttribute" + req.getContextPath());
if (targetURL.startsWith("/admin")) {
chain.doFilter(req, res);
return;
}
if (!"/login.jsp".equals(targetURL) )) {//判断是不是请求登陆页面,如果是则放过
if (session == null || session.getAttribute("username") == null) {
res.sendRedirect(req.getContextPath() + "/login.jsp");
return;
}
}
chain.doFilter(req, res);
}
}
web.xml配置
characterfilter
user.CharacterFilter
characterfilter
/*
CharacterFilter
checkLogin.CharacterFilter