3
我試圖實現Togglz & Spring使用@Configuration bean而不是XML。我不知道如何配置Configuration bean的返回類型。例如:Togglz with Spring @Configuration bean
@Configuration
public class SystemClockConfig {
@Bean
public SystemClock plainSystemClock() {
return new PlainSystemClock();
}
@Bean
public SystemClock awesomeSystemClock() {
return new AwesomeSystemClock();
}
@Bean
public FeatureProxyFactoryBean systemClock() {
FeatureProxyFactoryBean proxyFactoryBean = new FeatureProxyFactoryBean();
proxyFactoryBean.setActive(awesomeSystemClock());
proxyFactoryBean.setInactive(plainSystemClock());
proxyFactoryBean.setFeature(Features.AWESOME_SYSTEM_CLOCK.name());
proxyFactoryBean.setProxyType(SystemClock.class);
return proxyFactoryBean;
}
}
的systemClock
方法返回一個FeatureProxyFactoryBean
,但這個bean的客戶端需要一個SystemClock
。當然,編譯器對此感到厭煩。
我想它只是在使用XML配置時才起作用。使用配置bean時應該如何處理它?
此實現是在使用功能切換無用的情況下,因爲您的實現將被發現一次,因爲它作爲singleton提供 – vvursT 2014-03-24 06:44:26
FeatureProxyFactoryBean將創建一個代理,該代理將調用方法調用到正確的實例。所以這將工作正常。 – chkal 2014-03-26 12:53:04
我的不好。你是對的! – vvursT 2014-03-28 14:08:26