【SpringIOC教程】2.依赖注入

Spring IOC的核心控制反转和依赖注入,以下就是依赖注入核心注解:

@Autowired

@Autowired是按类型匹配

@Bean
public Person person(){
	return new Person("张三",18);
}

@Autowired           
public Person person;

可能不存在Person实例

@Autowired(required = false)         
public Person person;

@Qualifier

上述例子中可能会存在多个Person实例,使用@Qualifier可以让@Autowired指定bean的名称

@Bean                           
public Person person(){         
	return new Person("张三",18); 
}                               
                                
@Bean                           
public Person person1(){        
	return new Person("李四",19); 
}                               
                                 
@Qualifier("person1")           
@Autowired                      
public Person person;           

会注入李四这个实例

@Primary

设置装配优先级,首先装配李四这个实例

@Bean                           
public Person person(){         
	return new Person("张三",18); 
}     
                           
@Bean                           
@Primary                        
public Person person1(){        
	return new Person("李四",19); 
}                                

@Autowired                      
public Person person;                      

Java规范

JSR250–@Resource

@Resource和@Autowired类似,不过默认按名称装配,不支持@Primary

@Resource(name = "person1")
public Person person;      
JSR330–@Inject

需要导入jsr330依赖

<dependency>                           
  <groupId>javax.inject</groupId>      
  <artifactId>javax.inject</artifactId>
  <version>1</version>                 
</dependency>                          

@Inject和@Autowired功能一样

@Inject              
public Person person;
  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

terrybg

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值