spring时在启动时就把bean实例化好了吗?如果是这样,我在每个类构造方法里写上System.out.println("hello world!");在spring启动时为什么不输出呢?而getbean的时候却输出了?
解决方案 »
- HTTP Status 404 - /loginAction
- hibernate和spring集成中发生错误
- hibernate新手,关于插入数据
- struts2 两个action之间传递中文参数如何解决?
- 数据库连接池问题请教 一百分啊
- 倾家荡产求:大家谁知道Hex编辑是什么意思??有没有工具 把Hex编辑后的数据 还原回去
- 请教!!!在哪能下到Swing系列的源代码??谢谢!!~~~
- 请问怎样通过xalan进行xml文件的读写
- 数据树如何取得路径名????????
- 实现ATM
- 求解Hibernate一对多级联删除问题
- 为什么用了DWR弹出提示Failed to read input 的对话框呢?
楼主是不是在<beans> 标签中增加了default-lazy-init="true" 或者<bean>标签中增加了lazy-init="true"?
Spring并不是在启动时实例化bean的,
而是第一次调用时,实例化Bean。
采用单例模式。
//factory = new XmlBeanFactory(new ClassPathResource("com/spring/exercise/applicationContext.xml"));
//factory.getBean("testBean");
factory = new ClassPathXmlApplicationContext("com/spring/exercise/applicationContext.xml");
BeanFactory factory = null;
factory = new XmlBeanFactory(new ClassPathResource("com/spring/exercise/applicationContext.xml"));
factory.getBean("testBean");
这样的是启动后才实例化吗?还有这样
factory = new ClassPathXmlApplicationContext("com/spring/exercise/applicationContext.xml");
factory.getBean("testBean");
是启动时实例化吗?
等到用到的时候才会去调用这个对象,你可以DEBUG的时候看这个对象的id
zhangjihao正解。