我在學習Spring,據我所知,當我們對具有通用名稱(不是setter方法)的方法使用@annotation時,則方法的參數是自動裝配的。@autowired在春天的方法
public class MovieRecommender {
private MovieCatalog movieCatalog;
private CustomerPreferenceDao customerPreferenceDao;
@Autowired
public void prepare(MovieCatalog mC,
CustomerPreferenceDao cPD) {
this.movieCatalog = mC;
this.customerPreferenceDao = cPD;
}
// ...
}
所以,在這裏,田野movieCatalog和一個customerPreferenceDao被自動裝配與三菱商事和 CPD 的值。我不明白的是,如果沒有「@ autowired」,這與方法不同。
我知道@autowired應用於字段名稱,但無法理解值何時顯式傳遞給方法(setter或任何其他方法),那麼Spring會做什麼特別的?
@Autowired只能用於「構造函數,字段,設置方法或配置方法」。有關詳細信息,請參見[此答案](http://stackoverflow.com/a/3746611/2747533)。 – MirMasej
http://stackoverflow.com/questions/19414734/understanding-spring-autowired-usage可能的重複 –