这个@WebFilter("/*")不是拦截所有资源吗?为什么不拦截静态的html
@WebFilter("/*") //拦截所有资源
public class LoginFilter implements Filter {
@Override
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws ServletException, IOException {
//进行登入检查,通过session对登入进行检查,因为登入成功后Login的servlet 会对请求界面响应一个session
HttpServletRequest req = (HttpServletRequest)request;
//获取session,获取session需要把servletrequest强转为HttpServletRequest
HttpSession session = req.getSession();
Object ob = session.getAttribute("user");
//
//判断session的user受否为空
if (ob!=null){
//不为空,放行
chain.doFilter(request,response);
}else {
//为空,进行拦截,转发到,登入界面,直接结束函数就行了
req.setAttribute("error_msg","您还没有登入呢,请进行登入");
req.getRequestDispatcher("/login.jsp").forward(request,response);
return;
}
}
public void init(FilterConfig config) throws ServletException {
}
public void destroy() {
}
我这里拦截了所有的资源,但是当我访问任意界面的时候,它都应该跳转到登入界面
我想的是登入界面也在/*的资源范围内,不应该显示空白吗,但是它显示了html的骨架