编写拦截器
public class LoginHandlerInterceptor implements HandlerInterceptor {
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
Object user = request.getSession().getAttribute("username");
//已经登录了
if (null != user){
//放行,到下一个方法
return true;
}
//验证不通过
request.setAttribute("msg","您还没登陆,请先登录后再操作");
request.getRequestDispatcher("/index.html").forward(request,response);
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 {
}
}
ctrl+i 可快速实现方法
注册拦截器
//自定义配置类
@Configuration
public class MyMvcConf