如下:
public class LoginFilter extends HttpServlet implements Filter {
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
String uri = ((HttpServletRequest) request).getRequestURI();
boolean isFilter = false; // 是否需要過濾
if (uri.contains("/admin/")) {
isFilter=true;
}
if (isFilter) {
User user = (User)((HttpServletRequest) request).getSession()
.getAttribute(GlobalParameters.LOGIN_INFO);
if (user == null||!user.isAdmin()) {//不是管理員,直接跳轉到登錄頁面
((HttpServletResponse) response).sendRedirect("/login.jsp");
return;
}
}
//其他地址繼續按普通模式進行執行
chain.doFilter(request, response);
}
}