Spring Bean 的scope什么时候设置为prototype,什么时候设置为singleton?

原因:1.Spring中Bean的配置,如果不显式指明scope的值,那么默认为单例singleton。也就是说这个Bean只会新建一个实例。 

           2.设置为prototype之后,就会创建多个实例,可以理解为会new很多次。而singleton只会new一个实例 

准确的说,每次spring要获取bean的时候,都会调用getBean()方法 ,如果这个bean是singleton,那就会取唯一的一个实例出来 
如果是prototype,那么每次getBean(),都会new一个新实例。

总结 a:.对于有实例变量的类,要设置成prototype;没有实例变量的类,就用默认的singleton 
         b:Action一般我们都会设置成prototype,而Service只用singleton就可以。
 

猜你喜欢

转载自blog.csdn.net/xhudqlg/article/details/84310225