Java spring:在每个控制器模型中添加会话属性
我想为每个控制器在模型中添加常用属性 HandlerInterceptorAdapter可用于拦截请求。例如,您可以覆盖preHandle以验证会话,并在postHandle中将用户添加到模型中Java spring:在每个控制器模型中添加会话属性,java,spring,spring-boot,velocity,Java,Spring,Spring Boot,Velocity,我想为每个控制器在模型中添加常用属性 HandlerInterceptorAdapter可用于拦截请求。例如,您可以覆盖preHandle以验证会话,并在postHandle中将用户添加到模型中 public class SessionValidator extends HandlerInterceptorAdapter{ @Override public boolean preHandle(HttpServletRequest request,
public class SessionValidator extends HandlerInterceptorAdapter{
@Override
public boolean preHandle(HttpServletRequest request,
HttpServletResponse response, Object handler) throws Exception {
HttpSession session = request.getSession();
if (session == null || session.getAttribute("user") == null) {
return false;
}
return super.preHandle(request, response, handler);
}
@Override
public void postHandle(HttpServletRequest request,
HttpServletResponse response, Object handler,
ModelAndView modelAndView) throws Exception {
HttpSession session = request.getSession();
if (modelAndView != null) {
modelAndView.getModelMap().addAttribute("user", session.getAttribute("user"));
}
}
}
你的问题是?有什么例子吗?@home我找到了解决方案,只是误用了include和parse。因此,我删除了不敬的描述,并在下面自己回答。谢谢。在@ControllerAdvice中使用@SessionAttribute怎么样?