1. 程式人生 > >spring容器與管理bean的生命週期

spring容器與管理bean的生命週期

在基於spring的應用中,應用物件生存於spring容器中,容器物件建立他們,裝配他們,配置他們,管理他們整個生命週期,從生存到死亡。spring容器使用依賴注入管理構成應用的元件,他會建立相互協作的元件之間的關聯。

Sprin自帶的容器實現,可以歸為兩種不同的型別:

1.Bean工廠(由org.springframework.beans.factory.BeanFactory介面定義)是最簡單的容器。

2.應用上下文 (由org.springframework.context.ApplicationContext介面定義)基於BeanFactory之上構建,並提供面向應用的服務。

Bean工廠對於大多數應用來說太低階了,因此上下文要比Bean工廠更受歡迎。

Spring自帶的應用上下文型別:

1.ClassPathXmlApplicationContext-從類路徑下的Xml配置檔案中載入上下文定義,把應用上下文定義檔案動作類資源;

2.FileSystemXmlapplicationContext---讀取檔案系統下的XML配置檔案並載入上下文定義;

3XmlWebApplicationContext---讀取Web應用下的XML配置檔案並裝載上下文定義。

使用FileSystemXmlApplicationContext和使用ClassPathXmlApplicationContext的區別在於:前者在指定的檔案系統路徑下查詢配置檔案,後者所有的類路徑下(包含jar檔案)

查詢配置檔案

Bean的生命週期:

傳統的java應用,由java自動垃圾回收機制進行回收,相比之下,Spring容器中的Bean的生命週期就變得相對細膩的多。正確理解Spring Bean的生命週期非常重要,因為你或許要利用Spring提供的擴充套件點來自定義Bean的建立過程。如果bean實現了DisposableBean的介面,Spring將呼叫它的destroy介面方法,進行Bean的銷燬。