我目前正在从事一个Spring引导项目。我依赖于一个具有interceptor(LibraryProjectInterceptor.java)和public class LibraryProjectConfig implements WebMvcConfigurer并重写addInterceptors()方法以将LibraryProjectInterceptor添加到InterceptorRegistry的库项目。在我添加了这个库项目依赖项的实际项目中,我创建了一个拦截器(ActualProjectInterceptor),它需要在执行LibraryProjectInterceptor之后执行。我尝试过将@Order(value = Ordered.LOWEST_PRECEDENCE)添加到ActualProjectInterceptor中,以使其在LibraryProjectInterceptor之后执行,但它不起作用。有人能帮我吗
图书馆项目:
public class LibraryProjectInterceptor implements HandlerInterceptor {
......
}
@Configuration
@EnableWebMVC
public class LibraryProjectConfig implements WebMvcConfigurer {
......
@Override
public void addInterceptors(InterceptorRegistry registry) {
registry.addInterceptor(LibraryProjectInterceptor);
}
......
}实际项目:pom.xml
......
<dependencies>
<dependency>
<groupId>com.example</groupId>
<artifactId>library-project</artifactId>
<version>1.0.16</version>
</dependency>
......
@Component
@Order(value = Ordered.LOWEST_PRECEDENCE)
public class ActualProjectInterceptor implements HandlerInterceptor{
.......
}
@SpringBootApplication
public class ActualProjectConfig implements WebMvcConfigurer {
......
@Override
public void addInterceptors(InterceptorRegistry registry) {
registry.addInterceptor(ActualProjectInterceptor);
}
......
}发布于 2021-08-24 22:46:53
试试这个,我希望它能起作用。
@Component
public class ActualProjectInterceptor implements HandlerInterceptor {}
@SpringBootApplication
public class ActualProjectConfig implements WebMvcConfigurer {
@Override
public void addInterceptors(InterceptorRegistry registry) {
registry.addInterceptor(ActualProjectInterceptor)
.order(Ordered.LOWEST_PRECEDENCE);
}
}addInterceptor()方法创建InterceptorRegistration DSL对象,该对象具有指定所需内容的order()方法。
https://stackoverflow.com/questions/68914774
复制相似问题