本文整理自博客园
- 在spring的配置文件中导入命名空间
xmlns:context="http://www.springframework.org/schema/context"
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-2.5.xsd
- 引入注解解析器
<context:annotation-config></context:annotation-config>
- 在spring的配置文件中把bean引入进来
<beans>
<bean id="">
...
</bean>
</beans>
- 在一个类的属性上添加
@Resource
注解
public class xxx {
@Resource(name="student_annotation") //1:该注解可以放在属性或者方法上;2:有一个name属性默认值为"";
private Student student;
...
}
- 分析整个过程:
1、当启动spring容器的时候,spring容器加载了配置文件
2、在spring配置文件中,只要遇到bean的配置,就会为该bean创建对象
3、在纳入spring容器的范围内查找所有的bean,看哪些bean的属性或者方法上加有@Resource
4、找到@Resource注解以后,判断该注解name的属性是否为""(name没有写)
如果没有写name属性,则会让属性的名称的值和spring中ID的值做匹配,如果匹配成功则赋值
如果匹配不成功,则会按照类型进行匹配,如果匹配不成功,则报错