首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在使用Togglz Spring自动配置的应用程序配置bean创建中使用功能切换?

如何在使用Togglz Spring自动配置的应用程序配置bean创建中使用功能切换?
EN

Stack Overflow用户
提问于 2017-10-07 05:42:17
回答 1查看 211关注 0票数 1

使用功能切换在应用程序配置中创建bean的示例:

代码语言:javascript
复制
@RefreshScope
@Configuration
@Order(1)
class AppConfig {
    @Bean
    @Autowired
    public FeatureProvider featureProvider() {
        return new EnumBasedFeatureProvider(FeatureToggle.class);
    }

    @Bean
    @Autowired
    ProjectAccess getProjectAccess(DataSource dataSource, HazelcastLocator hazelcastLocator) {
        if(FeatureToggle.MY_TOGGLE_NAME.isActive()) {
            return new MyTestClass();
        }
        else {
            return new YourTestClass();
        }
    }
}
EN

回答 1

Stack Overflow用户

发布于 2017-10-31 15:19:49

你不应该这样做。;-)

这段代码的问题在于,您基本上在启动时只读取了一次切换,然后就不能再更改它。这不是Togglz通常的用法。

相反,您应该设计您的应用程序,以便可以在运行时切换开关。Togglz提供了专门为这种情况设计的FeatureProxyFactoryBean

您也可以手动创建,方法是为两个实现创建一个公共接口,然后创建一个实现,该实现基本上检查每个方法调用的切换,然后委托给正确的实例。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46614308

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档