当前位置: 首页 > 图灵资讯 > java面试题> javaSpring框架面试题-什么是Spring中的@Primary注解?

javaSpring框架面试题-什么是Spring中的@Primary注解?

来源:图灵教育
时间:2024-08-14 13:15:17

@Primary注解是Spring框架中的一个注解,用来解决当我们在配置多个相同类型的bean时,Spring不知道该选择哪个Bean的问题。

比如说,如果我们在一个Spring应用中定义了两个同类型的Bean,Spring在自动装配时可能会不知道该选择哪个Bean。这时候,我们可以使用@Primary注解来标记其中一个Bean为“首选”,这样当Spring需要自动装配这个类型的Bean时,就会选择带有@Primary注解的那个。

举个例子:

假设我们有两个不同的支付服务实现类,一个是支付宝支付,一个是微信支付。如果我们在配置的时候都把它们注册成了Bean,那么Spring在需要支付服务的时候就会不知道该用哪个了。这时候,我们可以在支付宝支付的实现类上加上@Primary注解,这样Spring就会默认使用支付宝支付这个实现类。

总的来说,@Primary注解的作用就是告诉Spring,在有多个候选Bean的时候,优先选择带有这个注解的Bean。