使用Dropwizard(2)-配置分类ConfiguredBundle

前言

不可避免的要用dropwizard作为service框架。持续学习。上次在dropwizard中使用feign,使用hystrix, 算是基本入门了。接下来就是基于此的优化。

把需要使用Configuration的逻辑从Application里分离出来

在开始的demo中,由于不知道dropwizard怎么传播类,怎么注入, 把所有的初始化的东西都放到Application里去new出来。现在发现有办法可以分离部分配置逻辑。

现在把feign的基础配置抽离出来:

public class ConnectivityBundle implements ConfiguredBundle<HelloWorldConfiguration> {
    @Override
    public void run(HelloWorldConfiguration configuration, Environment environment) throws Exception {
        //init hystrix config
        Map<String, Object> hystrixConfig = configuration.getHystrixConfig();
        for (final Map.Entry<String, Object> config : hystrixConfig.entrySet()) {
            ConfigurationManager.getConfigInstance().setProperty(config.getKey(), config.getValue());
            System.out.println(config.getKey());
        }
    }

    @Override
    public void initialize(Bootstrap<?> bootstrap) {

    }
}

然后,在Application中添加就好了。 com.test.HelloWorldApplication

@Override
public void initialize(Bootstrap<HelloWorldConfiguration> bootstrap) {
    bootstrap.addBundle(new ConnectivityBundle());
}

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏zhisheng

Spring Boot 2.0系列文章(六):Spring Boot 2.0中SpringBootApplication注解详解

转载请务必注明原创地址为:http://www.54tianzhisheng.cn/2018/04/19/SpringBootApplication-annot...

1001
来自专栏JAVA技术站

Spring整合Rabbitmq

没有找到一篇完整的文章介绍Spring如何整合Rabbitmq应用,琢磨一天搞出的一个入门的demo与伙伴们分享.

392
来自专栏Java技术分享

手把手教你dubbo怎么用?

Dubbo采用全Spring配置方式,透明化接入应用,对应用没有任何API侵入,只需用Spring加载Dubbo的配置即可,Dubbo基于Spring的Sche...

2178
来自专栏Java技术栈

Spring Boot 最核心的 3 个注解详解

最近面试一些 Java 开发者,他们其中有些在公司实际用过 Spring Boot, 有些是自己兴趣爱好在业余自己学习过。

581
来自专栏菩提树下的杨过

利用ganymed-ssh2远程执行其它Linux机器上的shell命令

实际应用中,有时候需要从web管理界面上,远程去启动其它linux主机上的程序,利用ssh协议可以方便的满足这一需求。事实上hadoop架构中,从nn上启动dn...

18910
来自专栏软件开发 -- 分享 互助 成长

C#调用java程序

前言: 最近跟项目组的人合作一个项目,由于之前我用的是java写的一个与android通信的程序,现在另一个同事来编写界面程序,由于C#编写起来比较方便,而我又...

2006
来自专栏Java成神之路

Spring_总结_03_装配Bean(四)之导入与混合配置

在典型的Spring应用中,我们可能会同时使用自动化和显示配置。同时,可能在某些场景下我们需要混合使用JavaConfig和xml配置。

693
来自专栏james大数据架构

springmvc注入类 NoUniqueBeanDefinitionException: No qualifying bean of type [] is defined: expected sin

在springmvc中注入服务时用@Service 当有两个实现类时都标明@Service后则会出现异常: nested exception is org.sp...

1917
来自专栏Play & Scala 技术分享

【长期更新】Play-Java开发技巧问答

2724
来自专栏吴伟祥

Lombok开发指南 原

1、添加Lombok IntelliJ插件以添加对IntelliJ的lombok支持:

481

扫码关注云+社区