代码&优雅着&生活

导航

通过硬编码获取dubbo服务对象

运维进行监控dubbo服务的时候可能会调用dubbo服务对象,并且定期去执行,这时候如果需要添加新的服务,可能需要修改监控dubbo服务的配置,即dubbo-producer.xml或是dubbo-consumer.xml。这就会导致每次添加一个服务,就要把dubbo服务相关配置加进配置文件,没有技术含量,而且是个长期而繁琐的工作。所以,我们可以通过硬编码获取dubbo的服务。这样我们就可以通过将dubob服务相关信息,存进文件或是数据库,来进行手动配置管理,而不必每次修改配置了。

怎么dubbo服务对象的,通过查找资料并测试,如下可以:

public static <T> T getDubboService(String interfStr,String zookeeperUrl,String appName) throws ClassNotFoundException{
        ApplicationConfig application=new ApplicationConfig();
        application.setName(appName);
        RegistryConfig registryConfig =new RegistryConfig ();        
        registryConfig.setAddress(zookeeperUrl);
        Class<?> interf=Class.forName(interfStr);
        ReferenceConfig<T> rc=new ReferenceConfig<T>();
        rc.setApplication(application);
        rc.setInterface(interf);
        return rc.get();
        
    }

只需传入三个参数即可拿到dubbo服务对象,可以尽情操作吧

posted on 2016-12-13 13:08  幸运的凌人  阅读(3411)  评论(0编辑  收藏  举报