Autowired(DI注解)
注解的三大必要元素:
@注解本身
@被贴的程序元素
@第三方的程序赋予这个注解特殊的功能:
何为第三方程序
<!-- DI注解解析器 -->
<context:annotation-config/>
Autowired的特点:
首先按照类型去找,然后再按字段的名字(xml中的id属性)去找,两者都找不到就报错。匹配上就会注入进去。
属性名字相同,xml中的id属性也相同: Bean name 'employ1' is already used in this <beans> element
属性名字与xml中的id属性不相同,
expected single matching bean but found 2: employ1,employ2
单一的匹配,不安全,应该是类型+id名字 双重进行匹配
@Autowired:如果使用单一个注解的话 一定要使用 DI注解解析器。
@Qualifier("employ1")//用的很少 除非同一种类型的bean有多种定义的时候才会用的到--通过id去取
@Autowired//根据类型找
@Qualifier(value="mysqlDataSourceBean")//在根据名字找
//相同类型的bean有多个 但是bean的id不同
<bean id="mysqlDataSourceBean" class="com.bean.MysqlDriveManagerDataSource"/>
<bean id="oracleDataSourceBean" class="com.bean.OracleDriveManagerDataSource"/>
源码百度云盘自取:链接:https://pan.baidu.com/s/1IGabNidPREogNVT_G5KgWA 密码:64ip