Spring、Springboot常⽤注解:@Qualifier(不定时更新)1、@Qualifier
出现场景:
⽼项⽬中有多个实现类实现同⼀个接⼝时,或者⼀个项⽬中有多个数据源时,spring容器不知道该注⼊哪个实现类或者使⽤哪个数据源,该注解就派上⽤场。
1)多实现类实现同⼀接⼝
1//接⼝
2public interface MemberService {
3public Member getMemberById(Long mid);
4 }
5//实现类⼀
6 @Service("memberService1")
7public class MemberServiceImpl1 implements MemberService{
8 @Override
9public Member getMemberById(Long mid){
10//业务代码1
11 }
12 }
13//实现类⼆
14 @Service("memberService2")
15public class MemberServiceImpl2 implements MemberService{
16 @Override
17public Member getMemberById(Long mid){
18//业务代码2
19 }
20 }
21//调⽤类
22 @Controller("/member")
23public class MemberController{
24 @Autowired
25 @Qualifier("memberService2") //此处如果不使⽤该注解则报错,原因就是容器不知道注⼊哪⼀个实现类
26private MemberService memberService;
27
28 @PostMapping(value = "/getMember",produces ={MediaType..APPLICATION_JSON_VALUE})
29public Response getMember(Long mid){
30return new Response().MemberById(mid));
spring framework guru31 }
32 }
View Code
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论