spring拦截器配置
来源:互联网 发布:centos修改ssh端口 编辑:程序博客网 时间:2024/06/05 08:33
1、新增一个拦截器的类继承HandlerInterceptor,并重写里面的preHandle方法
@Componentpublic class AccessInterceptor implements HandlerInterceptor { @Override public boolean preHandle(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o) throws Exception { String path = httpServletRequest.getRequestURI(); HttpSession session = httpServletRequest.getSession(); User user = (User) session.getAttribute("loginUser"); if(user==null){ httpServletResponse.setContentType("application/json"); httpServletResponse.setCharacterEncoding("utf-8"); JsonResult result = new JsonResult("需要重新登录"); ObjectMapper mapper = new ObjectMapper(); String jsonResult = mapper.writeValueAsString(result); httpServletResponse.getWriter().print(jsonResult); httpServletResponse.flushBuffer(); return false; } return true; }
2、在spring-mvc配置文件中增加如下配置。所有请求路径是notebook的都会拦截。
<mvc:interceptors> <mvc:interceptor> <mvc:mapping path="/notebook/*"/> <ref bean="accessInterceptor"/> </mvc:interceptor> </mvc:interceptors>
阅读全文