Spring - bean的lazy-init屬性(懶加載)


默認情況下,容器初始化的時候便會把bean實例化,通常這樣做可以讓一些配置或者bean實例化的異常在容器啟動的時候就發現,而不是在N久之后。但有時候,我們希望某個可能不會用到但又不是100%不用的bean能夠在我們用的時候才實例化,這樣可以節省系統資源。所以萬能的Spring為我們提供了lazy-init屬性:

 

<bean id="lazy" class="com.foo.ExpensiveToCreateBean" lazy-init="true"/>
<bean name="not.lazy" class="com.foo.AnotherBean"/>

 

上面例子中,容器初始化時not.lazy bean會被實例化,而lazy bean不會被實例化。但如果一個配置了lazy-init="true"屬性的bean被另外一個bean依賴,那Spring還是會在容器初始化的時候實例化這個bean

 

另外,假設我們希望某個bean的配置文件中的所有bean都是懶加載的,那我們可以給<beans/>標簽添加default-lazy-init="true"屬性。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM