SpringMVC拦截器实现

自定义拦截器类
public class SessionInterceptor extends HandlerInterceptorAdapter {

创新互联是一家专业提供三门峡企业网站建设,专注与成都网站建设、成都网站制作、H5建站、小程序制作等业务。10年已为三门峡众多企业、政府机构等服务。创新互联专业网站设计公司优惠进行中。

public SessionInterceptor() {
    // TODO Auto-generated constructor stub
}

private List excludedUrls;

//通过属性注册不需要过滤的url list
public void setExcludedUrls(List excludedUrls) {
    this.excludedUrls = excludedUrls;
}

@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler)
    throws Exception {

    String requestUrl = request.getRequestURI();
    //排除不需要过滤的URL
    for(String url:excludedUrls) {
        if(requestUrl.endsWith(url)) {
            return true;
        }
    }
    //获取当前的会话session
    HttpSession session = request.getSession();
    if(session.getAttribute("userid") == null) {
        //若登录session过期或不存在就跳转到login页面
        request.getRequestDispatcher("/login.jsp").forward(request, response);
        return false;
    }
    return true;
}

}
springmvc-servlet.xml 拦截器注册










/login

                
       
      

    



      

 


    HandlerInterceptorAdapter不能拦截WEB-INF目录以外的jsp文件;若需拦截默认index.jsp;可以将index.jsp移动目录到WEB-INF下即可;

分享名称:SpringMVC拦截器实现
转载源于:http://myzitong.com/article/jsoiee.html