Spring通過自動檢測自動裝配

在Spring,“通過自動檢測自動裝配”,“通過構造函數自動裝配”是指選,如果默認構造函數(參數與任何數據類型),以其他方式使用“按類型自動裝配”。
請參見Spring “通過自動檢測自動裝配”的一個例子。自動裝配(對"panda" bean 的實現基地)的“kungfu” Bean 到 “panda”,通過構造函數或類型。
<bean id="panda" class="com.xuhuhu.common.Panda" autowire="autodetect" />

	<bean id="kungfu" class="com.xuhuhu.common.KungFu" >
		<property name="name" value="Tai Ji" />
	</bean>

1. AutoDetect – 按構造函數裝配

如果默認的構造函數提供,自動檢測將構造自動裝配。
package com.xuhuhu.common;

public class Panda {
	private KungFu kungfu;

	public Panda(KungFu kungfu) {
		System.out.println("autowiring by constructor");
		this.kungfu = kungfu;
	}

	public KungFu getKungfu() {
		return kungfu;
	}

	public void setKungfu(KungFu kungfu) {
		System.out.println("autowiring by type");
		this.kungfu = kungfu;
	}

	//...
}

輸出

autowiring by type
Person [kungfu=Language [name=Tai Ji]]


2. AutoDetect – 按類型裝配

如果沒有找到默認的構造函數,自動檢測將按類型選擇裝配。
package com.xuhuhu.common;

public class Panda {
	private KungFu kungfu;

	public KungFu getKungfu() {
		return kungfu;
	}

	public void setKungfu(KungFu kungfu) {
		System.out.println("autowiring by type");
		this.kungfu = kungfu;
	}

	//...
}

輸出

autowiring by type
Person [kungfu=Language [name=Tai Ji]]



下載代碼 –  http://pan.baidu.com/s/1bnIFXvD

上一篇: Spring由構造方法自動裝配 下一篇: Spring使用@Autowired注解自動裝配