运行的结果只有一个init和destroy,虽然两个service实例化,但是默认是单例,加了scope=prototype就运行不正常了,结果两个init,没有destroy,原因未知。
首先我们应该知道:
一、spring Bean的作用域:scope=singleton(默认,单例,生成一个实例)
二、spring Bean的作用域:scope=prototype(多线程, 生成多个实例)
三、单例模式,默认在程序初始化的时候实例化(lazy-init=”false”)
四、prototype,getBean的时候才是实例化
五、lazy-init 只对单例模式起作用,对 prototype 不起作用(因为 prototype 默认就不是程序初始化的时候实例化的)
本文详细解释了Spring框架中Bean的作用域,包括singleton和prototype的区别。重点介绍了singleton模式下bean的初始化时机及其懒加载特性,并指出prototype作用域的bean实例化发生在getBean调用时。

712

被折叠的 条评论
为什么被折叠?



