一般情況下,spring容器在啟動的時候就會建立全部的bean物件。懶載入可以使bean物件在第一次使用時再載入,懶載入的實現可以使用@lazy註解。下面通過乙個例子來了解@lazy註解的使用以及效果。
現在有student類:
public class student implements serializable ';
} public string getsnumber()
public void setsnumber(string snumber)
public string getsname()
public void setsname(string sname)
public integer get***()
public void set***(integer ***)
public string getgradeid()
public void setgradeid(string gradeid)
public string getbirth()
public void setbirth(string birth)
}
再建立乙個@configuration註解修飾的類,目的是為了在初始化student物件時輸出一些東西以讓我們知道這個物件被初始化了。
@configuration
public class beanconfig
}
測試類如下:
@autowired
private student student;
@test
public void studenttest()}
測試類輸出結果如下:
可以看到student類是在容器啟動時就載入成功了。為了實現懶載入,我們只需要在beanconfig類上加上@lazy註解即可。然後再次執行測試類輸出如下:
可以看到student是在容器啟動後使用該物件時才載入。
SpringBoot的Bean之基本定義與使用
參考 在spring中,有兩個非常有名的特性,依賴注入 di 與切面 aop 其中依賴注入其主要的作用,可以說就是維護spring容器建立的bean之間的依賴關係,簡單來說就是乙個bean 假定名為a 持有另乙個bean 假定名為b 的引用作為成員變數b,則由spring容器自動將b賦值給a的成員變...
springboot 獲取普通Bean
有的時候需要在spring boo獲取普通bean,用來做測試或者其他的 我們寫乙個util 來獲取 package smaug.util.context import org.springframework.beans.bean ception import org.springframework...
Spring Boot 動態建立Bean
1 通過註解 import匯入方式建立 a 新建myimportbeandefinitionregistrar註冊中心 import org.springframework.beans.factory.support.beandefinitionregistry import org.springf...