1. 程式人生 > >Spring的學習之路(一)Bean

Spring的學習之路(一)Bean

序言

配置和使用Bean

在這裡我在本地建立了一個簡單的Web專案,Web 專案下有兩個類Student和Address類,驗證一下看看Spring如何管理Bean。

Student類
這裡寫圖片描述

Address類
這裡寫圖片描述

配置xml
resources目錄下建立Spring 配置檔案,我們通過查詢spring-beans-3.2xsd中可以返現bean的定義:
這裡寫圖片描述

其中:
identifiedType:只有一個屬性id
beanElements:ben可以配置的元素
beanAttributes:bean 可以配置的屬性

配置後
這裡寫圖片描述

建立容器
這裡寫圖片描述

通過以上的步驟我們成功利用了ClassPathXmlApplicationContext容器建立了Xml配置的Address例項和Student例項。

Bean可配置屬性

  1. class :建立Bean的型別
  2. name : Bean的命名
  3. scope:作用域
  4. constructor arguments:建構函式的引數
  5. properties:屬性列表
  6. lazy-initialization mode:懶載入模式
  7. auto wiring mode:自動裝配模式
  8. initialization method:初始化操作
  9. destruction method:解構函式

靜態方法

在Xml配置中 可以根據制定的靜態方法去構造Bean
這裡寫圖片描述

驗證是否成功
這裡寫圖片描述

工廠例項

如果你有同系列的多個Bean需要建立,你可以定義一個抽象工廠,利用工廠的方法去建立例項,Spring也支援這種配置。

這裡我定義了瀏覽器的基類
這裡寫圖片描述

Safari 瀏覽器
這裡寫圖片描述

Chrome瀏覽器
這裡寫圖片描述

抽象工廠
這裡寫圖片描述

Xml中的配置
這裡寫圖片描述

測試
這裡寫圖片描述

這樣就可以利用瀏覽器工廠去建立瀏覽器了

構造引數注入

有時候類的構造需要傳入多個引數,在Spring裡我們可以注入構造引數的例項來建立Bean。

這裡我定義了一個MacComputer
這裡寫圖片描述

XML中的配置
這裡寫圖片描述

測試
這裡寫圖片描述

簡單屬性注入

如果Bean 裡面的屬性可以與String互轉,以下兩種方式等價
第一種
這裡寫圖片描述

第二種
這裡寫圖片描述

簡單的屬性值可以寫成複雜的元素
這裡寫圖片描述

集合型別的注入

常見的比如Collection、List、Set、Map等