У меня есть проект Spring, который использует XML и аннотации для объявления bean-компонентов.Я пытаюсь объявить новые бины, используя аннотации.Существуют абстрактные bean-компоненты без реализации:
<bean id="parentBean1" parent="parentBean2" abstract="true">
<property name="service1" ref="service1" />
<property name="service2" ref="service2" />
<property name="service3" ref="service3" />
<property name="value1" value="123456" />
</bean>
<bean id="parentBean2" abstract="true">
<property name="newservice1" ref="newservice1" />
<property name="newservice2" ref="newservice2" />
...
<property name="newservice10" ref="newservice10" />
</bean>
Эти bean-компоненты используются для объявления других bean-компонентов с использованием XML:
<bean id="bean1" parent="parentBean1" class="MyClass">
<property name="target" ref="bean2" />
</bean>
Можно ли объявить bean-компонент с идентификатором bean1 с помощью аннотаций?Я знаю, что это можно сделать, как в примере:
@Configration
public class MyConfiguration {
@Autowired private Service1 service1;
@Autowired private Service2 service2;
....
@Bean
public MyClass myClassBean() {
MyClass myClassObj = new MyClass();
myClassObj.setService1(service1);
myClassObj.setService2(service2);
...
}
}
Используя аннотации, мне нужно было бы автоматически подключить около 35 сервисов.Есть ли простой способ сделать это с помощью аннотаций?Можно ли установить родительский компонент, у которого нет класса?Или, может быть, единственный способ использовать XML?
Спасибо за объяснение.