spring中bean的创建
bean对象创建的细节
1) 对象创建: 单例/多例
scope="singleton", 默认值, 即 默认是单例【service/dao/工具类】
scope="prototype", 多例; 【Action对象】
2) 什么时候创建?
scope="prototype" 在用到对象的时候,才创建对象。
scope="singleton" 在启动(容器初始化之前), 就已经创建了bean,且整个应用只有一个。
唯一一个对象实例,在容器创建之前已经创建。
3)是否延迟创建
lazy-init="false" 默认为false, 不延迟创建,即在启动时候就创建对象
lazy-init="true" 延迟初始化, 在用到对象的时候才创建对象
(只对单例有效)
4) 创建对象之后,初始化/销毁
init-method="init_user" 【对应对象的init_user方法,在对象创建爱之后执行 】
destroy-method="destroy_user" 【在调用容器对象的destroy方法时候执行,(容器用实现类)】
在applicationContext.xml中对象创建设置中设置初始化方法。
在测试类中调用。
看下运行示意图