那是因为Spring不在管理您的PagePopulationInterceptor
实例。您在以下代码中自行创建
public @Override void addInterceptors(InterceptorRegistry registry) {
registry.addInterceptor(new PagePopulationInterceptor());
}
更改为
@Bean
public PagePopulationInterceptor pagePopulationInterceptor() {
return new PagePopulationInterceptor();
}
public @Override void addInterceptors(InterceptorRegistry registry) {
registry.addInterceptor(pagePopulationInterceptor());
}
这样,由于PagePopulationInterceptor
实例是从@Bean
方法生成的,因此Spring将管理实例的生命周期。Spring将扫描它以寻找@Autowired
目标并注入它们。
假设它PagePopulationInterceptor
在要@ComponentScan
编辑的包中。