原創:springIOC介紹第二講

Red88Army發表於2020-04-06
Spring IOC容器
2、1基本原理:bean與容器
1、bean
在Spring中,那些組成你應用程式的主體(backbone)及由Spring IoC容器所管理的物件,被稱之為bean。簡單地講,bean就是由Spring容器初始化、裝配及管理的物件,除此之外,bean就與應用程式中的其他物件沒有什麼區別了。而bean定義以及bean相互間的依賴關係將通過配置後設資料來描述
2、容器
org.springframework.beans.factory.BeanFactory是Spring IoC容器的實際代表者,IoC容器負責容納此前所描述的bean,並對bean進行管理。
在Spring中,BeanFactory是IoC容器的核心介面。 它的職責包括:例項化、定位、配置應用程式中的物件及建立這些物件間的依賴。
Spring為我們提供了許多易用的BeanFactory實現, XmlBeanFactory就是最常用的一個。該實現將以XML方式描述組成應用的物件 以及物件間的依賴關係。XmlBeanFactory類將獲取此XML配 置後設資料,並用它來構建一個完全可配置的系統或應用
[img]http://dl.iteye.com/upload/picture/pic/90237/2705201d-fb2e-31d3-a2e3-9b5460dabd06.jpg[/img]
從上圖可以看到,Spring IoC容器將讀取配置後設資料; 並通過它對應用中各個物件進行例項化、配置以及組裝。通常情況下我們使用簡單直觀的XML來作為配置後設資料的描述格式。在XML配置後設資料中我們可以對那些我們希望通過 Spring IoC容器管理的bean進行定義。

Spring IoC容器至少包含一個bean定義,但大多數情況下會有多個bean定義。當使用基於XML的配置後設資料時,將在頂層的<beans/>元素中配置一個 或多個<bean/>元素。
bean定義與應用程式中實際使用的物件一一對應。通常情況下bean的定義包括:服務 層物件、資料訪問層物件(DAO)、類似Struts Action的 表示層物件、Hibernate SessionFactory物件、JMS Queue物件等等。通常bean的定義並不與容器中的領域 物件相同,因為領域物件的建立和載入必須依賴具體的DAO和業務邏輯。
以下是一個基於XML的配置後設資料的基本結構
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
<bean id="..." class="...">
<bean id="..." class="...">
</beans>
以上內容歸redarmy_chen建立,如需轉載請附帶出處。如有疑問請傳送郵件至redarmy_chen@qq.com

相關文章