使用Spring SPEL方法加载特定bean

时间:2018-02-15 11:23:23

标签: spring hibernate spring-config

我需要在我从配置属性中读取的条件下加载特定的bean。 我有两个bean所以我试图加载它如下

public interface MediatorInt {

public void init();

}

class A implements MediatorInt {
        init() { It does some task }
    }

class B implements MediatorInt {
    init(){ It does some task }
}

public class MasterNewGenImpl {
    @Autowired
    @Qualifier("config")
    private Configuration config;

    @Autowired
    MediatorInt mediatorInt;

    private final Logger logger = Logger.getLogger(getClass());

    public void startService() {
        mediatorInt.init();
    }
}

<context:component-scan base-package="com.ca"/>
    <bean id="config" class="com.ca.configuration.ConfigImplementation"/>    
    <bean id="masterSlave" class="com.ca.masterslave.A"/>
    <bean id="systemState" class="com.ca.masterslave.B"/>
    <bean id="masterSlaveNewGen" class="com.ca.masterslave.MasterNewGenImpl">
    <property name = "mediatorInt" value="#{config.getMediatorMode() == 'true' ? 'systemState' : 'masterSlave'}" />
</bean> 

但是bean没有加载。

如果语法或使用方法有任何错误,请帮助。

0 个答案:

没有答案