spring ioc 自動裝配,方法注入

2022-09-04 01:57:11 字數 2044 閱讀 7524

通過配置default-autowire 屬性,spring ioc 容器可以自動為程式注入bean;預設是no,不啟用自動裝配;

default-autowire 的型別有byname,bytype,constructor;

byname:通過名稱進行自動匹配;

bytype:根據型別進行自動匹配;

constructor:和bytype 類似,只不過它是根據構造方法注入而言的,根據型別,自動注入;

<

beans......default-autowire

="constructor"

>

spring bean 作用域預設是單例singleton; 可以通過配置prototype ,實現多例;

方法注入lookup-method

package

entity;

public

class

dog

public

void

setname(string name)

}

public

abstract

class

people

public

void setid(int

id)

public

string getname()

public

void

setname(string name)

public

intgetage()

public

void setage(int

age)

public

abstract

dog getdog();

public

void

setdog(dog dog)

@override

public

string tostring()

}

<?

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

?>

<

beans

xmlns

=""xmlns:xsi

=""xsi:schemalocation

="/spring-beans.xsd"

>

<

bean

id="dog"

class

="entity.dog"

scope

="prototype"

>

<

property

name

="name"

value

="jack"

>

property

>

bean

>

<

bean

id="people1"

class

="entity.people"

>

<

property

name

="id"

value

="1"

>

property

>

<

property

name

="name"

value

="張三"

>

property

>

<

property

name

="age"

value

="11"

>

property

>

<

lookup-method

name

="getdog"

bean

="dog"

/>

bean

>

beans

>

Spring IOC容器 自動裝配

根據名稱自動裝配,自動去ioc容器中找與屬性名同名的引用的物件,並自動注入。也可以定義到全域性,這樣就不用每個bean節點都去寫autowire byname 根據名稱自動裝配 全域性 根據型別自動裝配 autowire bytype 必須確保改型別在ioc容器中只有乙個物件 否則報錯。總結 s p...

Spring IOC 08 自動裝配

當乙個物件中需要引用另外乙個物件的時候,在之前的配置中我們都是通過property標籤來進行手動配置的,其實在spring中還提供了乙個非常強大的功能就是自動裝配,可以按照我們指定的規則進行配置,配置的方式有以下幾種 address class com.nanborone.bean.address ...

Spring IOC容器 XML自動裝配

bytype根據屬性型別注入 bean的裝配可以理解為依賴關係注入,bean的裝配方式即bean依賴注入的方式。spring容器支援多種形式的bean的裝配方式,如 基於xml的裝配 基於註解 annotation 的裝配和自動裝配等 其中最常用的是基於註解的裝配。今天主要來了解一下自動裝配的方式!...