成都创新互联网站制作重庆分公司

怎么运用Spring4+ZooKeeper配置中心

本篇内容介绍了“怎么运用Spring4+ZooKeeper配置中心”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

成都创新互联公司是工信部颁发资质IDC服务器商,为用户提供优质的西部信息服务器租用服务

一:ZooKeeper 连接配置类

  1. @Configuration

  2. @PropertySource("classpath:context-datasource.properties")

  3. public class ZooKeeperElConfig {

  4.     @Value("${zookeeper.cluster.url}")

  5.     private String zooKeeperClusterUrl;

  6.     @Value("${zookeeper.root.path}")

  7.     private String zooKeeperRootPath;

  8.     @Autowired

  9.     private Environment environment;

  10.     @Bean

  11.     public static PropertySourcesPlaceholderConfigurer propertyConfigure() {

  12.         return new PropertySourcesPlaceholderConfigurer();

  13.     }

  14.     @Bean(name = "zkClient")

  15.     public CuratorFramework zkClient() {

  16.         CuratorFramework client = CuratorFrameworkFactory.builder().connectString(zooKeeperClusterUrl)

  17.                 .sessionTimeoutMs(5000).retryPolicy(new ExponentialBackoffRetry(1000, 3)).namespace(zooKeeperRootPath).build();

  18.         client.start();

  19.         return client;

  20.     }

  21.     

  22.     

  23.     

  24. }


二: 读取ZooKeeper参数工具类

  1. @Component("systemElConfig")

  2. public class SystemElConfig {

  3.     @Autowired

  4.     CuratorFramework zkClient;

  5.     public String getProperty(String propertyName) {

  6.         String property = "";

  7.         try {

  8.             property = new String(zkClient.getData().forPath("/" + propertyName));

  9.         }

  10.         catch (Exception e) {

  11.             e.printStackTrace();

  12.         }

  13.         return property;

  14.     }

  15. }

三: 其它配置类引用ZooKeeper中的参数信息举例

  1. @Value("#{systemElConfig.getProperty('mailHost')}")

  2.     private String mailHost;

采用Spring EL 表达式   注解方式

“怎么运用Spring4+ZooKeeper配置中心”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注创新互联网站,小编将为大家输出更多高质量的实用文章!


新闻标题:怎么运用Spring4+ZooKeeper配置中心
链接URL:http://cxhlcq.com/article/gegjei.html

其他资讯

在线咨询

微信咨询

电话咨询

028-86922220(工作日)

18980820575(7×24)

提交需求

返回顶部