2.27@ComponentScan注解的lazyInit属性
戴着假发的程序员出品 抖音ID:戴着假发的程序员 欢迎关注
[查看视频教程]
lazyInit用于通知spring对扫描的类是要延迟初始化。默认是false,就是不延迟。我们可以修改为true测试一下:
修改配置类,将lazyInit修改为true。
1 /** 2 * @author 戴着假发的程序员 3 * 4 * @description 5 */ 6 @Configuration 7 @ComponentScan(basePackages = "com. st.dk.demo6",lazyInit = true) 8 public class AppConfig { 9 }
修改测试类:
1 @Test 2 public void testLazyInit(){ 3 ApplicationContext ac = 4 new AnnotationConfigApplicationContext(AppConfig.class); 5 System.out.println("容器创建完成"); 6 Bus bean = ac.getBean(Bus.class); 7 System.out.println("获取bean:"+bean); 8 }
结果:
我们发现容器创建完成之后,spring并没有实例化任何类,当我们获取Bus类对象时,spring才会实例化Bus类对象。
我是戴着假发的程序员,分享技术,分享经验,如果要转载,请注明:出自戴着假发的程序员