Spring懶載入機制

2022-08-02 03:21:12 字數 1147 閱讀 5746

spring缺省會在容器初始化的過程中,解析xml,並將單例的bean建立並儲存到map中,這樣的機制在bean比較少時問題不大,但一旦bean非常多時,spring需要在啟動的過程中花費大量的時間來建立bean 花費大量的空間儲存bean,但這些bean可能很久都用不上,這種在啟動時在時間和空間上的浪費顯得非常的不值得。

所以spring提供了懶載入機制。所謂的懶載入機制就是可以規定指定的bean不在啟動時立即建立,而是在後續第一次用到時才建立,從而減輕在啟動過程中對時間和記憶體的消耗。

懶載入機制只對單例bean有作用,對於多例bean設定懶載入沒有意義。

1.為指定bean配置懶載入 

<?

xml version="1.0" encoding="utf-8"

?>

<

beans

xmlns

=""xmlns:xsi

=""xsi:schemalocation

=" /spring-beans-3.2.xsd"

>

<

bean

id="user"

class

="com.spring.demo.user"

lazy-init

="true"

>

bean

>

beans

>

2.為全域性配置懶載入

<?

xml version="1.0" encoding="utf-8"

?>

<

beans

xmlns

=""xmlns:xsi

=""xsi:schemalocation

=" /spring-beans-3.2.xsd"

default-lazy-init

="true"

>

<

bean

id="user"

class

="com.spring.demo.user"

>

bean

>

beans

>

注意:如果同時設定全域性和指定bean的懶載入機制,且配置不相同,則對於該bean區域性配置覆蓋全域性配置。

Spring的懶載入機制

今天覆習了spring的知識點,總結一下經常大家經常問到的spring的懶載入機制 spring缺省會在容器初始化的過程中,解析xml,並將單例的bean建立並儲存到map中,這樣的機制在bean比較少時問題不大,但一旦bean非常多時,spring需要在啟動的過程中花費大量的時間來建立bean 花...

spring的懶載入和非懶載入

因為這樣在配置中的任何錯誤就會即刻被發現 否則的話可能要花幾個小時甚至幾天 有時候這種預設處理可能並不是 在xml配置檔案中,延遲初始化將通過元素中的 lazy init 屬性來進行控制。例如 html view plain copy beanid lazy class com.foo.expens...

Spring中懶載入與非懶載入

在xml配置檔案中,延遲初始化將通過元素中的lazy init屬性來進行控制。例如 在容器層次中通過在元素上使用 default lazy init 屬性來控制延遲初始化也是可能的。如下面的配置 在同乙個檔案中裡面設定的優先順序大於裡設定的優先順序 immediately lazy immediat...