2 回答
TA贡献1824条经验 获得超6个赞
可能是加载spring配置文件的时候有问题:1web.xml查看<context-param>是否正确引入配置文件;2配置文件里面查看bean信息是否配置正确;
TA贡献1859条经验 获得超6个赞
Spring实例化BeanFactory的时候是默认到classPath下面查找名为applicationContext.xml的文件。
ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml");
Spring BeanFactory实例化Bean的过程
Bean的实例化是Bean生命周期的一个非常重要的环节,一般来说,初始化后,就不再改变了,直到bean被从BeanFactory中显式的移除。当从BeanFactory中通过getBean()方法获取一个bean的时候,BeanFactory会经过如下的步骤来构建Bean的实例,这正是实例化Bean的过程:
调用Bean的默认构造方法,或者在指定的构造方法,生成bean实例(暂称为instance1)。
如果Bean的配置文件中注入了Bean属性值,则在instance1基础上进行属性注入形成instance2,这种注入是覆盖性的。
如果Bean实现了InitializingBean接口,则调用afterPropertiesSet()方法,来改变或操作instance2,得到instance3。
如果Bean的配置文件中指定了init-method="init"属性,则会调用指定的初始化方法,则在instance3的基础上调用初始化方法init(),将对象最终初始化为instance4;当然,这个初始化的名字是任意的。
添加回答
举报