Я новичок в структуре spring и наткнулся на следующую проблему.
У меня есть интерфейс ClassA
, который реализуется с помощью классифицированных ClassA1
и ClassA2
.
У меня есть следующее определение bean, добавленное в applicationContext.xml
<bean id="class1" class="com.abc.ClassA1" />
<bean id="class2" class="com.abc.ClassA2" />
Я хотел бы Autowire оба класса реализации, как показано ниже.
@Autowired
private ClassA1 classA1;
@Autowired
private ClassA2 classA2;
Приведенный выше код бросает ошибку как
Не удалось autowrite в поле: com.abc.ClassA1 com.abc.SomeClass.classA1; вложенное исключение org.springframework.beans.factory.NoSuchBeanDefinitionException: Нет соответствия bean типа [Com.abc.ClassA1]
Но если я изменю autwiring на интерфейс, как показано ниже:
@Autowired
ClassA classA1;
Затем ClassA1 автоматически передается переменной. Я не знаю, как я могу autwire переменную для ClassA2.