您的位置:首页 > 编程语言 > Java开发

Spring 受管理 Bean scope 的 prototype 和 singleton 区别

2010-12-27 14:31 477 查看
      如果一个bean是prototype的,并且这个bean要被注入到其它bean或者你通过getBean这样的方式获得这个bean的时候,spring容器会创建一个新的实例给你。

 

      singleton模式指的是对某个对象的完全共享,包括代码空间和数据空间,也就是说,singleton会让所有线程共享他的成员变量。prototype 则不会这样。

此外singleton的生命周期由容器来管理,但是prototype的生命周期得你自己管理。

      最后,有个小trick,singleton的bean引用一个prototype的bean时会出现问题,因为singleton只初始化一
次,但prototype每请求一次都会有一个新的对象,但prototype类型的bean是singleton类型bean的一个属性,所以不可能有
新prototpye的bean产生。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  prototype bean spring