在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]]
上一篇:
Spring由構造方法自動裝配
下一篇:
Spring使用@Autowired注解自動裝配