Spring MVC拦截器:根据preHandle中的值在postHandle中做一些逻辑

时间:2014-02-26 08:32:56

标签: spring interceptor

我想在我的自定义拦截器中的 postHandle 中做一些逻辑,如果 preHandle 返回“true”,则扩展 HandlerInterceptorAdapter

我怎样才能实现这一目标?

1 个答案:

答案 0 :(得分:3)

弹簧拦截器的规格说:

  

preHandle(..)方法返回一个布尔值。您可以使用此方法来中断或继续执行链的处理。当此方法返回true时,处理程序执行链将继续;当它返回false时,DispatcherServlet假定拦截器本身已处理请求(例如,呈现适当的视图)并且不继续执行执行链中的其他拦截器和实际处理程序。 [1]

因此,如果您从false返回preHandle(),则不会执行处理程序,因此postHandle()也不会触发。换句话说,不需要明确检查preHandle()的返回值。