A spring java configuration class can have more than one bean defined in it. I am aware on how to obtain a single bean which is defined in a java spring configuration class. Some thing like -
AnnotationConfigApplicationContext ctx = new AnnotationConfigApplicationContext(BeanConfigurer.class);
ClassA a = ctx.getBean(ClassA.class);
But I want to know if using a single method call is there a way to obtain every bean defined in the configuration class. The bean configurer class is something like below. All classes - ClassA, ClassB, ClassC extend a common parent ClassAlphabet.
@Configuration
public class BeanConfigurer {
@Bean
public ClassA classA()
{
return new ClassA () ;
}
@Bean
public ClassB classB()
{
return new ClassB () ;
}
@Bean
public ClassC classC()
{
return new ClassC () ;
}
}
And I am interested in doing a single method call and get all the beans in to a list. something like below:
List<ClassAlphabet> listOfClasses = ctx.getBeans(ClassAlphabets.class);
or simply
List<ClassAlphabet> listOfClasses = ctx.getBeans();
Is it possible??