2018-05-19 阴天 最近一个月在整理公司的基础框架 记录一下
公司原先使用的注解使用的@Autowired 自己想到是不是可以使用@resource 这时候就在网上查找一些资料。
1 了解spring的几种装配方式
参考https://www.zhihu.com/question/39361250
2 结果:
2 @resource 装配顺序
①如果同时指定了name和type,则从Spring上下文中找到唯一匹配的bean进行装配,找不到则抛出异常。
②如果指定了name,则从上下文中查找名称(id)匹配的bean进行装配,找不到则抛出异常。
③如果指定了type,则从上下文中找到类型匹配的唯一bean进行装配,找不到或是找到多个,都会抛出异常。
④如果既没有指定name,又没有指定type,则自动按照byName方式进行装配;如果没有匹配,则回退为一个原始类型进行匹配,如果匹配则自动装配。
@Resource的作用相当于@Autowired,只不过@Autowired按照byType自动注入
个人观点:在使用项目中建议使用resource 一是resource实质上就是Autowired 但是写起来比较代码比较优雅 二是减少与spring的耦合性。
参考博客:https://www.zhihu.com/question/39356740
https://blog.csdn.net/ajax11111/article/details/50057297