Spring Boot 核心技术SpringBoot极简教程 · Spring Boot Java基础

Spring依赖注入:@Autowired,@Resource和

2019-06-13  本文已影响16人  Java_苏先生

点关注,不迷路;持续更新Java架构相关技术及资讯热文!!!

一、spring依赖注入使用方式

二、spring依赖注入注解的实现原理

注解处理器

注解处理器的激活条件

1.基于xml的spring配置

2.基于配置类的spring配置

总结

  1. @Autowired是Spring自带的,@Inject和@Resource都是JDK提供的,其中@Inject是JSR330规范实现的,@Resource是JSR250规范实现的,而Spring通过BeanPostProcessor来提供对JDK规范的支持。

  2. @Autowired、@Inject用法基本一样,不同之处为@Autowired有一个required属性,表示该注入是否是必须的,即如果为必须的,则如果找不到对应的bean,就无法注入,无法创建当前bean。

  3. @Autowired、@Inject是默认按照类型匹配的,@Resource是按照名称匹配的。如在spring-boot-data项目中自动生成的redisTemplate的bean,是需要通过byName来注入的。如果需要注入该默认的,则需要使用@Resource来注入,而不是@Autowired。

  4. 对于@Autowire和@Inject,如果同一类型存在多个bean实例,则需要指定注入的beanName。@Autowired和@Qualifier一起使用,@Inject和@Name一起使用。

上一篇 下一篇

猜你喜欢

热点阅读