繁体   English   中英

Java spring 框架拦截器问题

[英]Java spring framework interceptor issues

我一直在努力让我的日志拦截器工作三天。

我觉得已经通过 Stackoverflow 和互联网上的其他教程,但我仍然没有找到有效的解决方案。

我正在使用Java 8Spring 框架 4.3.25.RELEASE

这是我的代码。

@EnableWebMvc
@Configuration
public class WebConfig extends WebMvcConfigurerAdapter {

    @Bean
    public LoggingInterceptor loggingInterceptor () {
        return new LoggingInterceptor ();
    }

    @Override
    public void addInterceptors(InterceptorRegistry registry) {
        registry.addInterceptor( loggingInterceptor() );
    }
}


@Component
public class LoggingInterceptor implements HandlerInterceptor {

  @Override
  public boolean preHandle(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o) throws Exception {
    System.out.println("preHandle");
    return true;
  }

  @Override
  public void postHandle(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, ModelAndView modelAndView) throws Exception {
    System.out.println("postHandle");
  }

  @Override
  public void afterCompletion(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, Exception e) throws Exception {
    System.out.println("afterCompletion");
  }
}

难道是我没有使用@SpringBootApplication注释?

您可以扩展 HandlerInterceptorAdapter,并覆盖您 sepcify 的方法。我将在下面发布我的代码。

@Component
public class MyIntercepter extends HandlerInterceptorAdapter {
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse 
response, Object handler) throws Exception {
return true;
}



@Configuration
    public class WebMvcConfiguration implements WebMvcConfigurer {
    
        @Override
        public void addInterceptors(InterceptorRegistry registry) {
                registry.addInterceptor(myIntercepter);
        }
    }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM