当一个bean的作用域为prototype导致销毁方法不执行?
本帖最后由 ing 于 2019-7-11 09:56 编辑我没有理解为什么作用域为prototype(每次从容器中调用Bean时,都返回一个新的实例) 会导致销毁方法的不执行,
我尝试过在销毁方法上下断点但方法没有进入过...
运行截图以及Bean类
注解方式进行的spring配置
销毁方法
按我理解的是,当作用域为prototype时,Spring容器不会Bean的整个生命周期进行管理,它只是负责new一个对象出来,当你使用完该对象后会自动销毁或者等待回收,如果作用域换成singleton,它的生命周期就由Spring容器负责,应该能调用到destroy方法 JKyle52 发表于 2019-7-10 11:05
按我理解的是,当作用域为prototype时,Spring容器不会Bean的整个生命周期进行管理,它只是负责new一个对象 ...
可如果sprin不对生命周期进行管理为什么生命周期的初始化被调用了? ing 发表于 2019-7-10 13:36
可如果sprin不对生命周期进行管理为什么生命周期的初始化被调用了?
你getBean的操作,对作用域为prototype的Bean,都是new一个新的对象出来,网上也有很多对prototype和destroy的坑的描述,可以深入了解下
页:
[1]