千家信息网

怎么运用Spring4+ZooKeeper配置中心

发表于:2025-02-23 作者:千家信息网编辑
千家信息网最后更新 2025年02月23日,本篇内容介绍了"怎么运用Spring4+ZooKeeper配置中心"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能
千家信息网最后更新 2025年02月23日怎么运用Spring4+ZooKeeper配置中心

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

一: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. }


二: 读取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配置中心"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!

0