Spring bean作用域

谁能解释一下springbean作用域singletonprototype吗?谢谢!... 谁能解释一下spring bean作用域singleton prototype吗? 谢谢! 展开
 我来答
百度网友abb51c9
2014-07-29 · TA获得超过1021个赞
知道小有建树答主
回答量:913
采纳率:0%
帮助的人:402万
展开全部
singleton作用域:当把一个Bean定义设置为singleton作用域是,Spring IoC容器中只会存在一个共享的Bean实例,并且所有对Bean的

请求,只要id与该Bean定义相匹配,则只会返回该Bean的同一实例。值得强调的是singleton作用域是Spring中的缺省作用域。
prototype作用域:prototype作用域的Bean会导致在每次对该Bean请求(将其注入到另一个Bean中,或者以程序的方式调用容器的getBean

()方法)时都会创建一个新的Bean实例。根据经验,对有状态的Bean应使用prototype作用域,而对无状态的Bean则应该使用singleton作用

域。
对于具有prototype作用域的Bean,有一点很重要,即Spring不能对该Bean的整个生命周期负责。具有prototype作用域的Bean创建后交由调

用者负责销毁对象回收资源。
简单的说:
singleton 只有一个实例,也即是单例模式。
prototype访问一次创建一个实例,相当于new。
应用场合:
1.需要回收重要资源(数据库连接等)的事宜配置为singleton,如果配置为prototype需要应用确保资源正常回收。
2.有状态的Bean配置成singleton会引发未知问题,可以考虑配置为prototype。
更多追问追答
追问
谢谢大哥, 另外想问下什么叫"有状态的Bean"呢? 帮我解答下把我给分
追答
这个一两句话说不清楚,简单来说就是
无状态会话Bean是没有能够标识它的目前状态的属性的Bean
至于状态会话Bean,可以这样理解:它是有存储能力的。也就是说至少有一个属性来标识它目前的状态。
Storm代理
2023-08-29 广告
"StormProxies是全球大数据IP资源服务商,其住宅代理网络由真实的家庭住宅IP组成,可为企业或个人提供满足各种场景的代理产品。点击免费测试(注册即送1G流量)StormProxies有哪些优势?1、IP+端口提取形式,不限带宽,I... 点击进入详情页
本回答由Storm代理提供
samplezuo
2014-07-29 · TA获得超过320个赞
知道小有建树答主
回答量:452
采纳率:100%
帮助的人:256万
展开全部
singleton 的bean只会实例化一次

prototype每次都会实例化一次
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式