# zk-ucc
**Repository Path**: mirrors_gspandy/zk-ucc
## Basic Information
- **Project Name**: zk-ucc
- **Description**: 基于zookeeper的统一配置中心实现
- **Primary Language**: Unknown
- **License**: Apache-2.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2020-09-24
- **Last Updated**: 2025-10-19
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
## ucc-zookeeper:
基于zookeeper的统一配置中心实现
## 项目说明
由agent和console组成
agent:作为基础jar包,被接入程序使用
console:后台运营、管理、配置的地方
##如何使用统一配置呢?
1、Annotaion 这无疑是最简洁、优雅的方式
2、控制台配置
3、java原生
## 项目如何接入统一配置?
主要通过三种方式:这三种都需要添加相关的mvn依赖(jar包),
然后就可以在你的项目使用Annotation了
1、spring接入
2、修改启动脚本
3、在控制台配置相关信息
### spring接入说明:
##### 第一步
添加mvn依赖:
com.bitium10.ucc
ucc-spring
1.0-SNAPSHOT
##### 第二步
配置xml方式:
##### 第三步
spring接入实例
@Service("kw")
@ZkTypeConfigurable(useOwnServer = false,path = "/conf/test/demo")
public class KeyWord implements Config {
@ZkExtendConfigurable(path = "keyWords",update = true,tempKey = "key_words",dataStroe = CacheDataStore.class)
public static Map config = new HashMap(0);
@Override
public void print() {
System.out.println(config);
}
}
### agent接入说明:
提供三种接入方式
##### 方式一:
控制台配置方案,客户端自动加载。
##### 方式二:
通过agent的方式:
1、配置注解:
@ZkTypeConfigurable(servers = "localhost:2181",useOwnServer = true,path = "/conf/test/demo")
public class Requirements {
@ZkFieldConfigurable(path = "name",update = true)
public static String name = "default_name";
@ZkFieldConfigurable(path = "cpu",update = true,resolver = CpuResolver.class)
public static Cpu cpu = new Cpu("default","default","default");
}
2、修改jvm启动参数加上:
-javaagent:cuc-agent-1.0-SNAPSHOT.jar
###### 方式三:
除以上的启动但是外,还支持一下两种agent方式:
1、启动参数
-javaagent:agent.jar=zk@localhost:2181#class@com.bitium10.ucc.Demo
2、jvm环境变量
-javaagent:agent.jar -DZK=localhost:2181 -DCLASS=c1,c2,c3
### 扩展配置接入说明
1、定义扩展配置存储方案
实现ExtendDataStore接口即可。例如:
public class CacheDataStore implements ExtendDataStore