Spring 6 自動裝配Beans

2021-09-06 07:41:00 字數 1289 閱讀 3869

在spring框架,可以用 auto-wiring 功能會自動裝配bean。要啟用它,只需要在 定義「autowire」屬性。

在spring中,支援 5 自動裝配模式。

customer 和 person 物件自動裝配示範。

package com.yiibai.common;

public class customer

public void setperson(person person)

//...

}

package com.yiibai.common;

public class person

這是預設的模式,你需要通過 'ref' 屬性來連線 bean。

按屬性名稱自動裝配。在這種情況下,由於對「person」 bean的名稱是相同於「customer」 bean 的屬性(「person」)名稱,所以,spring會自動通過setter方法將其裝配 – 「setperson(person person)「.

檢視完整的示例 – spring按名稱自動裝配

通過按屬性的資料型別自動裝配bean。在這種情況下,由於「person」 bean中的資料型別是與「customer」 bean的屬性(person物件)的資料型別一樣的,所以,spring會自動通過setter方法將其自動裝配。– 「setperson(person person)「.

檢視完整的示例 – spring通過型別自動裝配

通過構造函式引數的資料型別按屬性自動裝配bean。在這種情況下,由於「person」 bean的資料型別與「customer」 bean的屬性(person物件)的構造函式引數的資料型別是一樣的,所以,spring通過構造方法自動裝配 – 「public customer(person person)「.

檢視完整的示例 – 

檢視完整的示例 – 

spring按autodetect自動裝配成功.

這是一件好事,這兩個auto-wire』 和 『dependency-check』 相結合,以確保屬性始終自動裝配成功。

在我看來,spring 『auto-wiring』 以極大的成本做出更快開發效率 - 它增加了對整個 bean 配置檔案複雜性,甚至不知道哪些bean將自動裝配哪個bean。

在實踐中,我更頃向手動關聯建立,它始終是乾淨,也很好地工作,或者使用 @autowired 註解,這是更加靈活和建議

spring 自動裝配bean

在spring中,支援 5 自動裝配模式。public class customer public void setperson person person 要啟用 autowired,必須註冊 autowiredannotationbeanpostprocessor 可以使用在 set方法 構造方...

(Spring)自動裝配bean

自動裝配說明 spring的自動裝配需要從兩個角度來實現,或者說是兩個操作 元件掃瞄和自動裝配組合發揮巨大威力,使得顯示的配置降低到最少。public class cat public class dog public class people public void setcat cat cat ...

Spring自動裝配bean

configuration顯示這是乙個配置類,componentscan無其他配置則預設在該類所在包內開啟元件掃瞄,若有多個包則寫成 componentscan basepackages 若有多個類,則 componentscan basepackagesclasses package sounds...