欄位注入及其危害
欄位注入(即透過欄位上的 @Autowired 註解注入 Bean)通常不被鼓勵。要描述這一點,請考慮以下內容:
@Component public class MyComponent { @Autowired private Cart cart; }
或者,構造函數注入採用以下方法:
@Component public class MyComponent { private final Cart cart; @Autowired public MyComponent(Cart cart){ this.cart = cart; } }
注入技術
那裡主要有以下三個依賴注入方法:
欄位注入,如第一個範例所示,對應第三個選項。
注入指南
Spring 提倡遵循注射指南:
Field的缺點注入
不鼓勵字段注入有幾個原因:
結論
建構子和setter注入應依需求決定優先順序。由於現場注射的缺點,一般應避免,而方便性是其唯一的優點。
以上是為什麼在 Spring 依賴注入中要避免欄位注入?的詳細內容。更多資訊請關注PHP中文網其他相關文章!