Autowired和Qualifier標籤:
1.通过**@Autowired**標籤可以讓Spring自動的把属性需要的對象從Spring容器找出来,並注入给該屬性。
2.第三方程序:Spring3.0之前,需要手动配置@Autowired解析注解程序,Spring就會自動加入針對@Autowired標籤的解析程序,Spring3.0後,可以不再需要改配置了,如果不在Spring的Test中找到@Autowired的解析代码此时必须配置.<context:annotation-config />
3.@Autowired贴在字段或者setter方法上。
4.@Autowired可以同时为一個属性注入多對象。public void setXxx(OtherBean1 other1,OtherBean2 other2) {}
5.使用@Autowired可以注入Spring内置的重要对象,比如BeanFactory,ApplicationContext。@RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration public class SpringTest { @Autowired private ApplicationContext ctx; }
6.預設情况下@Autowired必须要能找到對應對象,否则會有錯誤訊息。不過,可使用required=false来避免問题:@Autowired(required=false)
7.@Autowired找bean的方式:
1)、按照依赖對象的類型找,如果找到则使用setter方法或字段直接注入
2)、如果在Spring Context找到多匹配的類型,則按照名字去找,如果没有匹配则有錯誤訊息
3)、可以通過使用@Qualifier("otherBean")標籤規定依赖對象照bean的id+類型去找