1、使用@Autowired的當前類也必須由spring容器托管(打@Coponent、@Controller、@Service 、@repository)
2、不管是public 和 private 修飾的字段都可以自動注入
3、默認情況下,使用@Autowired注解的屬性一定要被裝配,如果在容器中找不到該類型的bean注入,就會報錯。如果允許不被裝配就可以將@Autowired的required屬性為false
4、@Autowired 是基於類型的注入,如果當前類型屬性在容器中只有一個Bean, 那么屬性名不限制,但一般建議遵循類名首字母小寫的規則‘
5、如果當前屬性類型在容器中有個多個Bean,那么必須要通過屬性名 或者 @Qualifier 指定Bean name
6、@Autowired 可以打在XXX[] 、List<XXX>上 ,此時會將容器中所有XXX類型的bean 都注入進去、且屬性名沒有約束,但是注意可以通過@Qualifier指定注入指定beanName的bean,屬性名是沒有約束作用的
7、@Autowired可以打在Map<String,XXX>上,此時所有XXX類型的bean都會被注入 ,beanName 為key ,對象為value,但是注意可以通過@Qualifier指定注入指定beanName的bean,屬性名是沒有約束作用的