相关疑难解决方法(0)

Spring MVC InterceptorHandler使用DeferredResult调用了两次

当我使用自定义HandlerInterceptor并且我的控制器返回时DeferredResult,preHandle我的自定义拦截器的 方法在每个请求上调用两次.考虑一个玩具示例.

我的自定义拦截器:

public class MyInterceptor implements HandlerInterceptor {
    static int i = 0;

    @Override
    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
        System.out.println(i++);
        return true;
    }

    @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 {
    }
}
Run Code Online (Sandbox Code Playgroud)

我的Spring Java配置:

@Configuration
@EnableWebMvc
public class ApplicationConfiguration extends WebMvcConfigurerAdapter {

    @Override
    public void …
Run Code Online (Sandbox Code Playgroud)

java spring-mvc

12
推荐指数
4
解决办法
7177
查看次数

标签 统计

java ×1

spring-mvc ×1