Spring Boot(5) web开发(3)拦截器、文件上传、异常处理
学习视频: https://www.bilibili.com/video/BV19K4y1L7MT?p=49&spm_id_from=pageDriver
1.拦截器
拦截器的三个位置:
1.1 实现Interceptor接口
/**
* @ClassName LoginIntercepor
* @Description TODO
* @Author deserts
* @Date 2021/4/2 10:28
*/
@Slf4j
public class LoginInterceptor implements HandlerInterceptor {
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
String requestURI = request.getRequestURI();
log.info("请求的路径是:" + requestURI);
Object user = request.getSession().getAttribute("user");
if(user != null){
return true;
}
request.setAttribute("msg", "请先登录");
request.getRequestDispatcher("/").forward(request, response);
return false;
}
@Override
public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {
log.info("postHandle放行", modelAndView);
}
@Override
public void afterCompletion(HttpServletRequest request, HttpServletResponse response