1.创建拦截器, 实现HandlerInterceptor,重写它的方法,
PreHandle: true为继续请求链接,false是取消请求
postHandle: 请求完controller之后执行
afterCompletion: 整个请求加载完后
public class UserInteorst implements HandlerInterceptor { @Override public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { request.setCharacterEncoding("UTF-8"); response.setCharacterEncoding("UTF-8"); PrintWriter out=response.getWriter(); out.print("<body style='background:black;'><html><div align='center'style='color:white;font-size:40px'>Please wait... </div></html></body>"); return false; } @Override public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception { } @Override public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception { } }
2.创建配置文件.继承自:WevMvcConfigurationSupport,添加拦截链接,取消拦截链接
@Configuration public class BeanInterceptor extends WebMvcConfigurationSupport { @Override protected void addInterceptors(InterceptorRegistry registry) { String []addpath={"/user/**"}; String []exlpath={"/user/login"}; registry.addInterceptor(new UserInteorst()).addPathPatterns(addpath).excludePathPatterns(exlpath); } }3.创建Controller,编写相关接口