java之依赖 jar 中的 Spring Lazy Init = true
exmyth
阅读:225
2025-06-02 22:19:02
评论:0
我有一个应用程序,它有许多依赖的 jar 文件。其中每一个都有一个 spring.xml。如何为这些 jar 文件中定义的 bean 设置 lazy init = true?
依赖jar文件中的一些spring.xml文件明确设置了lazy init = false。
请您参考如下方法:
您可以通过添加自定义 BeanFactoryPostProcessor 来实现像这样:
@Configuration
class BeanLifecycleConfiguration {
@Bean
public static BeanFactoryPostProcessor changeCustomComponentsToLazyInit() {
return new BeanFactoryPostProcessor() {
@Override
public void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) throws BeansException {
for (String name : beanFactory.getBeanDefinitionNames()) {
BeanDefinition beanDefinition = beanFactory.getBeanDefinition(name);
if (beanDefinition.getBeanClassName().startsWith("your.package.name")) {
beanDefinition.setLazyInit(true);
}
}
}
};
}
}
声明
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。



