@Resource的作用相当于@Autowired,只不过@Autowired按byType自动注入,而@Resource默认按 byName自动注入罢了。@Resource有两个属性是比较重要的,分是name和type,Spring将@Resource注解的name属性解析为bean的名字,而type属性则解析为bean的类型。所以如果使用name属性,则使用byName的自动注入策略,而使用type属性时则使用byType自动注入策略。如果既不指定name也不指定type属性,这时将通过反射机制使用byName自动注入策略。
@Resource装配顺序
1. 如果同时指定了name和type,则从Spring上下文中找到唯一匹配的bean进行装配,找不到则抛出异常
2. 如果指定了name,则从上下文中查找名称(id)匹配的bean进行装配,找不到则抛出异常
3. 如果指定了type,则从上下文中找到类型匹配的唯一bean进行装配,找不到或者找到多个,都会抛出异常
4. 如果既没有指定name,又没有指定type,则自动按照byName方式进行装配;如果没有匹配,则回退为一个原始类型进行匹配,如果匹配则自动装配;
- 浏览: 541152 次
文章分类
- 全部博客 (573)
- Java (57)
- Android (79)
- 锻炼 (0)
- database (35)
- clean code (1)
- linux (15)
- liferay (1)
- webservice (3)
- gradle (9)
- webservice,spring (1)
- httpclient (5)
- 工程 (1)
- log (8)
- android studio (22)
- spring (15)
- Java,Eclipse (4)
- jmeter (3)
- ndk (2)
- Mac (13)
- AR (1)
- jetty (2)
- http (2)
- springmvc (11)
- 注解 (1)
- IOS (166)
- javascript (5)
- servlet (1)
- eclipse (5)
- GCM (1)
- git (12)
- Android开源资料 (1)
- SQL (10)
- openCV (2)
- JVM (1)
- Ldap (1)
- maven (2)
- 正则表达式 (1)
- TCP/IP (1)
- Kotlin (12)
- intellij idea (5)
- Spring Boot (5)
- tomcat (3)
- 设计模式 (1)
- Django (6)
- python (11)
- springboot (7)
- photoshop (1)
- 树莓派 (5)
- spring cloud (3)
- homebrew (1)
- React Native (15)
- flutter (3)
- 爬虫 (1)
- Dart (1)
- js (4)
- AI (3)
- 密码学 (4)
- 笔记 (1)
- 前端 (19)
- CTF (6)
- LeetCode (2)
- MS Office (1)
- 项目管理 (1)
- docker (1)
最新评论
发表评论
-
(转)jdbcTemplate批量更新操作
2019-04-04 14:45 900转自:https://blog.csdn.net/q3435 ... -
[Java]Fobid multiple login
2019-02-28 19:03 524if (isLogin) { //Forbid M ... -
[Spring]如何使用bcrypt
2019-02-27 16:08 8201.先上代码 BCryptPasswordEncoder ... -
@Autowired 构造方法作用
2017-07-26 15:45 1624当我们需要在类的构造方法里面里面获得需要注入的对象时: ... -
(转)SpringMVC 文件上传,使用的MultipartFile
2017-01-23 16:46 2445转自:http://blog.csdn.NET/dycdyc ... -
获取工程的文件目录
2016-07-25 16:51 5671。除了写定了文件目录路径的方法外,如何获取部署时的工程文件 ... -
How to catch Spring PageNotFound exception
2016-07-21 16:13 735参考: http://stackoverflow.com/ ... -
Json & xml 注解 in springmvc
2016-07-19 10:48 2129一.Json: 1.spring mvc 中使返回值为j ... -
spring异常处理@ExceptionHandler
2016-07-13 18:40 1109处理参数缺失: @ExceptionHandler ... -
spring 拦截器
2016-07-13 18:01 951自定义拦截器 SpringMVC的拦截器Handl ... -
(转)为什么jar没有生成directory entries,jar中的class就不能被Spring扫描到呢?
2016-01-22 15:40 818转自:http://blog.csdn.net/wangpe ... -
spring注入静态类
2015-12-07 17:18 1167public static AutoTopUpService ... -
(转)Spring注解@Component、@Repository、@Service、@Controller区别
2015-12-07 14:52 1085很长时间没做web项目都把以前学的那点框架知识忘光了,今天把 ... -
Spring注解@Component、@Repository、@Service、@Controller区别
2015-05-11 14:57 677很长时间没做web项目都把以前学的那点框架知识忘光了,今天 ...
相关推荐
在阅读《Spring中Autowired和Resource的区别.docx》文档时,可以深入探讨这两个注解的内部实现原理,以及在实际项目中的最佳实践。通过源码分析,我们可以了解到Spring如何解析这些注解并执行依赖注入的过程,这有助...
在Spring框架中,`@Autowired`和`@Resource`都是用于自动装配Bean的重要注解,它们简化了依赖注入的过程,使得代码更加简洁、易于维护。本文将深入探讨这两个注解的使用、区别以及如何在实际开发中应用它们。 首先...
Spring 依赖注入:@Autowired,@Resource 和@Inject 区别与实现原理 Spring 依赖注入是指在应用程序中将对象之间的依赖关系自动装配的过程。Spring 框架提供了多种依赖注入方式,包括 @Autowired、@Resource 和@...
@Resource 和 @Autowired 的区别 在 Spring 框架中,@Resource 和 @Autowired 是两种常用的依赖注入方式,但是它们之间存在着一些关键的区别。 首先,让我们来了解 @Autowired 注解。@Autowired 是 Spring 框架...
8. **`@Autowired`的替代品**:Spring还提供了一些其他的注解,如`@Resource`(基于名称的注入)和`@Value`(用于注入基本类型或属性值)作为`@Autowired`的补充。 结合前一篇文章中的注解笔记,我们可以推断出上一...
Spring 注解@Resource 和@Autowired Spring 框架中提供了两个重要的注解,分别是@Resource 和@Autowired,它们都是用于 bean 的自动装配的。了解这两个注解的区别和使用场景是非常重要的。 首先,@Autowired 是 ...
在Spring框架中,注解是实现依赖注入的重要方式,其中包括`@Autowired`和`@Resource`两个常用的注解。它们虽然都可以用来注入依赖,但在实际使用中存在一些区别。 首先,`@Autowired`注解是Spring框架特有的,主要...
在Spring框架中,`@Autowired`注解...正确理解和使用`@Autowired`,可以帮助开发者构建更加灵活和健壮的应用程序。通过合理的bean设计和适当的注解使用,我们可以充分利用Spring的强大功能,同时保持代码的简洁和高效。
Spring注解详解 -- @Autowired、@Resource和@Service Spring框架中有三个非常重要的注解,即@Autowired、@Resource和@Service。这三个注解都是Spring框架中最常用的注解,它们都是用于解决Spring框架中的依赖注入...
Spring框架是Java领域中实现DI的典型代表,提供了多种注解来支持这一机制,其中两个常用的注解是`@Resource`和`@Autowired`。虽然它们都可以用来实现依赖注入,但它们的用法和原理有所不同。 首先,`@Resource`注解...
SpringBoot 多线程处理任务中无法@Autowired注入bean问题解决 在 SpringBoot 应用程序中,多线程处理任务是一个常见的场景,但是,在多线程处理任务中无法使用 @Autowired 注入 bean,这是一个常见的问题。今天,...
除了`@Autowired`,Spring框架还提供了其他的依赖注入注解,如`@Resource`(主要用于JSR-250规范,基于名称的注入)和`@Inject`(JSR-330规范,基于类型和名称的注入)。这些注解在不同的场景下有不同的优势,开发者...
`@Autowired`和`@Resource`虽然都可以实现依赖注入,但它们的使用场景有所不同。`@Autowired`更侧重于类型匹配,适用于大多数情况,而`@Resource`则更适用于你知道确切的Bean名称,并希望基于名称注入依赖的情况。 ...
8. **@Autowired与@Resource的区别** `@Autowired`主要基于类型匹配,而`@Resource`则优先基于名称匹配。`@Resource`是JSR-250规范的一部分,它的行为更接近于传统的J2EE资源注入。`@Autowired`提供了更灵活的依赖...
主要介绍了Spring注解@Resource和@Autowired区别对比详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
### @Autowired 报错原因分析及四种解决方案 #### 一、引言 在日常的Java开发工作中,尤其是使用Spring框架时,我们经常会遇到@Autowired注解出现的编译警告或者错误。尽管这些错误往往不会影响程序的实际运行,但...
3、@Resource和@Autowired @Resource和@Autowired都是做bean的注入时使用,其实@Resource并不是Spring的注解,它的包是javax.annotation.Resource,需要导入,但是Spring支持该注解的注入。 1、共同点 两者都可以写...
本节中我们讨论了 MyBatis 和 Spring 中的一些重要知识点,包括 MyBatis 的特点、注解风格的 MyBatis 中获取数据库厂商自动生成的主键值、Spring 中的 @Autowired 和 @Resource 注解等。通过对这些知识点的掌握,...
- @Autowired与@Resource:虽然两者都可以用来自动装配,但@Autowired默认按类型匹配,而@Resource默认按名字匹配。 总结,Spring的@Autowired自动装配机制极大地简化了bean之间的依赖管理,提高了代码的可维护性。...