如何使用Spring Post处理器添加一个Spring MVC HandlerInterceptor

时间:2016-12-15 08:11:15

标签: spring spring-mvc

我正在开发一个包含Spring MVC拦截器的jar。我希望每个Spring MVC Web应用程序都将该jar作为依赖项添加到拦截器中。

目标应用程序配置了xml。

在我的jar中,我可以使用XML:

<mvc:interceptors>
    <mvc:interceptor>
        <mvc:mapping path="/mynewinterceptor/**" />
        <bean class="com.codependent.myapp.interceptor.MyNewInterceptor">
        </bean>
    </mvc:interceptor>
</mvc:interceptors>

这样,应用程序将导入它并获取拦截器注册。但是我希望它是透明的,也就是说,我希望只是添加他们获得拦截器的jar。

请注意,所有应用都已扫描com.xxx.plugin包,寻找bean。我想可以使用位于我的jar中的那个包中的某种Spring post处理器来完成...

1 个答案:

答案 0 :(得分:2)

尝试,

@Configuration 
@ComponentScan({"com.include.your.jar.package"}) 
@EnableWebMvc   
public class AppConfig extends WebMvcConfigurerAdapter  {  

    @Autowired
    private HandlerInterceptor[] inteceptors;

    @Override
    public void addInterceptors(InterceptorRegistry registry) {
        registry.addInterceptor(inteceptors).addPathPatterns("/");     
    }
}