Sobes.tech
Junior — Middle
152

¿Puede explicar el concepto de Primary en el contexto de Spring y para qué se utiliza?

Empresas donde se preguntó
БАРС группБАРС групп

Respuesta de la IA

sobes.tech AI

В Spring аннотация @Primary используется для указания предпочтительного бина, если в контексте есть несколько кандидатов для внедрения зависимости одного типа. Это помогает избежать конфликта, когда Spring не может однозначно выбрать, какой бин использовать.

Например, если у вас есть два бина одного интерфейса, и вы хотите, чтобы один из них использовался по умолчанию, пометьте его @Primary:

@Component
@Primary
public class PrimaryService implements MyService {
    // реализация
}

@Component
public class SecondaryService implements MyService {
    // реализация
}

При автосвязывании Spring выберет PrimaryService, если не указано иное.