本篇內(nèi)容介紹了“怎么運(yùn)用Spring4+ZooKeeper配置中心”的有關(guān)知識(shí),在實(shí)際案例的操作過(guò)程中,不少人都會(huì)遇到這樣的困境,接下來(lái)就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!
成都創(chuàng)新互聯(lián)公司是工信部頒發(fā)資質(zhì)IDC服務(wù)器商,為用戶(hù)提供優(yōu)質(zhì)的西部信息服務(wù)器租用服務(wù)
一:ZooKeeper 連接配置類(lèi)
@Configuration
@PropertySource("classpath:context-datasource.properties")
public class ZooKeeperElConfig {
@Value("${zookeeper.cluster.url}")
private String zooKeeperClusterUrl;
@Value("${zookeeper.root.path}")
private String zooKeeperRootPath;
@Autowired
private Environment environment;
@Bean
public static PropertySourcesPlaceholderConfigurer propertyConfigure() {
return new PropertySourcesPlaceholderConfigurer();
}
@Bean(name = "zkClient")
public CuratorFramework zkClient() {
CuratorFramework client = CuratorFrameworkFactory.builder().connectString(zooKeeperClusterUrl)
.sessionTimeoutMs(5000).retryPolicy(new ExponentialBackoffRetry(1000, 3)).namespace(zooKeeperRootPath).build();
client.start();
return client;
}
}
二: 讀取ZooKeeper參數(shù)工具類(lèi)
@Component("systemElConfig")
public class SystemElConfig {
@Autowired
CuratorFramework zkClient;
public String getProperty(String propertyName) {
String property = "";
try {
property = new String(zkClient.getData().forPath("/" + propertyName));
}
catch (Exception e) {
e.printStackTrace();
}
return property;
}
}
三: 其它配置類(lèi)引用ZooKeeper中的參數(shù)信息舉例
@Value("#{systemElConfig.getProperty('mailHost')}")
private String mailHost;
采用Spring EL 表達(dá)式 注解方式
“怎么運(yùn)用Spring4+ZooKeeper配置中心”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!