我有一個Car具有依賴關系的類:Motor
我的課Car是這樣的:
@Component
public class Car {
private Motor motor;
@Autowired
public Car(Motor motor) {
this.motor = motor;
}
public Car() {
this.motor = new Motor("created by Car");
}
我不確定 Spring 如何管理要做什么:使用默認/無引數建構式或建構式注入依賴項?應該使用哪個電機實體?
uj5u.com熱心網友回復:
基于Autowired檔案,
將選擇在 Spring 容器中通過匹配 bean 可以滿足的依賴項數量最多的建構式。如果不能滿足任何候選者,則將使用主/默認建構式(如果存在)。
這意味著,在您的情況下,如果 Spring 引導容器Motor在引導期間找到 bean(可能是通過@Configuraton或@Component等),那么您的Carbean 將使用基于建構式的 DI 進行實體化,在這種情況下,默認建構式將不會用于創建Carbean。
Motor如果在創建 bean 期間沒有可用的Carbean,則使用默認建構式。
uj5u.com熱心網友回復:
spring 總是默認呼叫 no arg 建構式確保你將 motar 注釋為 Component
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/479460.html
