我需要根据特定条件动态加载Spring bean。我正在打电话给外部服务。如果服务返回true,那么我需要注入bean a,否则需要注入bean b。 bean a和bean b都实现相同的接口。我使用的是Spring 4.1.4,而不是Spring Boot。
答案 0 :(得分:2)
考虑到您没有使用Spring Boot,我想您可以尝试这样的事情:
while(.|\n|\r)*has.*\(\)
答案 1 :(得分:0)
您可以带条件,将其放在if语句中,然后返回所需的任何bean。
MyInterface myBean = null;
if(conditional == true){
myBean = context.getBean(BeanA.class);
}else{
myBean = context.getBean(BeanB.class);
}
return myBean;