spring依賴注入bean 預設是單例模式

2022-10-11 18:57:10 字數 631 閱讀 2388

spring提供了5種scope分別是singleton、prototype、request、session、global session。

單例bean與原型bean的區別

單例bean的優勢

由於不會每次都新建立新物件所以有一下幾個效能上的優勢:

單例bean的劣勢

單例的bean乙個很大的劣勢就是他不能做到執行緒安全,由於所有請求都共享乙個bean例項,所以這個bean要是有狀態的乙個bean的話可能在併發場景下出現問題,而原型的bean則不會有這樣問題(但也有例外,比如他被單例bean依賴),因為給每個請求都新建立例項。

面試題:spring 為啥把bean預設設計成單例?

答案:單例有啥劣勢?

如果是有狀態的話在併發環境下執行緒不安全。

什麼是有狀態物件?什麼是無狀態物件?

有狀態物件:有例項變數可以標誌其物件所處的狀態。(有例項變數的物件,有儲存資料能力)- 白話:有屬性的物件

無狀態物件:無例項變數可以標誌其物件所處的狀態。(無例項變數的物件,無儲存資料能力)- 白話:無屬性的物件

對有狀態bean和無狀態bean的理解**) - 傻瓜不傻108 - (cnblogs.com)

spring 依賴注入bean的屬性

對於類成員變數,spring支援建構函式注入,屬性setter方法注入 0.domain類 public class student public student string name,int age public string getname public void setname string...

spring 依賴注入 Spring依賴注入

依賴注入 dependency injection,簡稱di 與控制反轉 ioc 的含義相同控制反 在使用spring框架之後,物件的例項不再由呼叫者來建立,而是由spring容器來建立,spring容器會負責控制程式之間的關係,而不是由呼叫者的程式 直接控制,這樣控制權由應用程式轉移到了sprin...

採用Spring管理Bean和依賴注入

1.例項化spring容器和從容器獲取bean物件 例項化spring容器常用的兩種方式 方法一 在類路徑下尋找配置檔案來例項化容器 推薦使用 方法二 在檔案系統路徑下尋找配置檔案來例項化容器 這種方式可以在開發階段使用 spring的配置檔案可以指定多個,可以通過string陣列傳入。當sprin...

spring 配置bean的方法及依賴注入發方式

bean 的配置方式 通過全類名 反射 通過工廠方法 靜態工廠方法 例項工廠方法 factorybean 這裡依據全類名配置bean 依賴注入發方式 屬性注入 package com.spring public class helloword public void hello public hel...

spring 配置bean的方法及依賴注入發方式

bean 的配置方式 通過全類名 反射 通過工廠方法 靜態工廠方法 例項工廠方法 factorybean 這裡根據全類名配置bean 依賴注入發方式 屬性注入 applicationcontext.xml配置檔案為 package com.spring public class helloword ...