1、@Controller、@Service在org.springframework的spring-context依賴下,@Autowired在org.springframework的spring-beans依賴下。
2、@Service用在類上,注冊為一個bean,bean名稱默認為類名稱(首字母小寫),也可以手動指定@Service(“abc”)或@Service(value = “abc”)
3、@Autowired優先根據屬性類型匹配,根據屬性類型只匹配到一個時,則直接使用,不再比較屬性值;當匹配到多個時再根據屬性名稱匹配,@Autowired可以用在已注冊為bean的類的屬性上,來引用其他外部bean,屬性的類型為外部bean的類名或外部bean實現的接口名,
----外部bean沒有實現接口
----屬性類型應為外部bean的類名,屬性值任意寫或與@Service的value值相同
----外部bean實現了接口,且是接口的唯一實現類時
----屬性類型為外部bean類名時,屬性值任意寫或與@Service的value值相同
----屬性類型為外部bean實現的接口名時,屬性值任意寫或與@Service的value值相同
----外部bean實現了接口,且不是接口的唯一實現類時
----屬性類型為外部bean類名時,屬性值任意寫或與@Service的value值相同
----屬性類型為外部bean實現的接口名時,屬性值應與需要的某一個實現類的類名相同(首字母小寫)或與@Service指定的value值相同
