用@Resource注解来装配属性
2017-09-22 23:33
197 查看
使用 Field 注入(注解方式):减轻配置文件的臃肿程度。
原因:在 xml 中注入的话,如果变量很多,那会使得行数很多,很臃肿。
定义变量时加上注解:
@Resource
private PersonDao personDao;
或者在 setter 函数前面加上注解:
@Resource
public void setPersonDao(PersonDao personDao) {
this. personDao = personDao;
}
均可以。
这样的话,在 xml 中,只需要定义 bean 即可:
< bean id= "personDao" class = "person.dao.impl.PersonDaoBean"/>
因为被 @Resource 注解的变量或者方法,会先根据变量名或者方法名,在 xml 中找到有一致 id 的<bean>,然后其 class 属性的值即为将要注入的类。
如果没有一致 id 的<bean>,即改为了:
< bean id= "haha" class = "person.dao.impl.PersonDaoBean"/>
那么会按照类型来匹配,即:字段的类型为 PersonDao,则扫描 class 中有没有含有 PersonDao 的 bean,有的话,便匹配上了。上面这个例子就可以匹配上,将 PersonDaoBean 给了 personDao。
可以使用指定 bean 名称的注解,即
@ Resource(name= "haha")
来强制匹配相同名称的<bean>。如果匹配不到,则会报错,不会再按照类型来匹配。
原因:在 xml 中注入的话,如果变量很多,那会使得行数很多,很臃肿。
定义变量时加上注解:
@Resource
private PersonDao personDao;
或者在 setter 函数前面加上注解:
@Resource
public void setPersonDao(PersonDao personDao) {
this. personDao = personDao;
}
均可以。
这样的话,在 xml 中,只需要定义 bean 即可:
< bean id= "personDao" class = "person.dao.impl.PersonDaoBean"/>
因为被 @Resource 注解的变量或者方法,会先根据变量名或者方法名,在 xml 中找到有一致 id 的<bean>,然后其 class 属性的值即为将要注入的类。
如果没有一致 id 的<bean>,即改为了:
< bean id= "haha" class = "person.dao.impl.PersonDaoBean"/>
那么会按照类型来匹配,即:字段的类型为 PersonDao,则扫描 class 中有没有含有 PersonDao 的 bean,有的话,便匹配上了。上面这个例子就可以匹配上,将 PersonDaoBean 给了 personDao。
可以使用指定 bean 名称的注解,即
@ Resource(name= "haha")
来强制匹配相同名称的<bean>。如果匹配不到,则会报错,不会再按照类型来匹配。
相关文章推荐
- 用@Resource注解完成属性装配
- 用@Resource和@Autowired注解完成属性装配 .
- 用@Resource和@Autowired注解完成属性装配
- 11_传智播客Spring2.5视频教程_用@Resource注解完成属性装配
- Spring(七)用@Resource和@Autowired注解完成属性装配及自动装配
- Spring中用@Resource注解完成属性装配
- Spring2.5学习3.1_用@Resource注解完成属性装配
- 用@Resource和@Autowired注解完成属性装配 .
- 用@Resource和@Autowired注解完成属性装配
- 用@Resource注解完成属性装配
- 用@Resource注解完成属性装配
- ITCAST视频-Spring学习笔记(用@Resource注解完成属性装配)
- 通过@Resource注解实现属性装配代码详解
- 用@Resource和@Autowired注解完成属性装配
- (转)用@Resource注解完成属性装配
- 用@Resource注解完成属性装配
- (7) 用@Resource注解完成属性装配 【依赖注入----手动装配】 以及 编码解析其原理【经典】
- (6) 用@Resource注解完成属性装配 【依赖注入----手动装配】 以及 编码解析其原理【经典】
- 解决自定义Shiro.Realm扩展类不能用注解(@Resource或@Autowire)自动装配的问题
- Spring AOP注解通过@Autowired,@Resource(J2EE提供),@Qualifier,@PostConstruct,@PreDestroy注入属性的配置文件详解