弹簧框架加载的所有bean都有lang-init弹簧属性吗?
我知道这些属性
- lazy-init="true"
- default-lazy-init="true"
然而,有多个spring config xml文件,有些是在jar中打包的,所以不能自由更改< bean>也不是&bean;标签
通过配置解决此问题的任何其他方法?还是以编程方式?
答案 0 :(得分:2)
没有扩展Spring bean加载器,我不知道。
答案 1 :(得分:2)
您也可以使用@Lazy
注释,但它与您上面提到的相同。
答案 2 :(得分:0)
根据java doc,这应该有效(虽然它看起来不太好)
if (context.getBeanFactory() instanceof DefaultListableBeanFactory)
{
((DefaultListableBeanFactory) context.getBeanFactory()).setAllowEagerClassLoading(false);
}
答案 3 :(得分:0)
我已经在我的公司实施了这个,不得不延长一些强硬的类。这并不容易,但我们在每个tomcat初创公司都获得了大约20秒。不幸的是,对于隐私条款,我无法显示代码,但请查看ClassPathBeanDefinitionScanner,DefaultBeanDefinitionDocumentReader,ContextNamespaceHandler和ComponentScanBeanDefinitionParser类。