# 统一配置模块
## 内容介绍
- [统一配置模块](#统一配置模块)
- [内容介绍](#内容介绍)
- [关于](#关于)
- [Getting Started](#getting-started)
- [预需要](#预需要)
- [使用例子](#使用例子)
- [get方法 获取keys的值. keys必须存在, 否则异常](#get方法-获取keys的值-keys必须存在-否则异常)
- [set方法 赋值. keys必须存在, 否则异常](#set方法-赋值-keys必须存在-否则异常)
- [setWithCreate方法 赋值. 如果key不存在就创建](#setwithcreate方法-赋值-如果key不存在就创建)
- [exists方法 判断keys 是否存在](#exists方法-判断keys-是否存在)
- [createKeys方法 创建keys. 也可以使用 setWithCreate](#createkeys方法-创建keys-也可以使用-setwithcreate)
- [remove方法. 删除key. 和map删除原理一样](#remove方法-删除key-和map删除原理一样)
- [非默认group.dataId方法](#非默认groupdataid方法)
- [开发者](#开发者)
## 关于
* 由于历史项目配置混乱, 循环去mysql表查询配置不合理.
* 重写一个基于nacos配置模块
## Getting Started
### 预需要
```
安装nacos. 配置好group dataId
```
java项目resources文件夹里 application.properties 里配置
```
yuandian.dataflow.config.nacos.server.addr=config.yuandian.local:8848
```
在pom.xml文件里添加依赖
```pom
com.yuandian.common
config
${具体版本}
```
### 使用例子
#### get方法 获取keys的值. keys必须存在, 否则异常
```java
Config.UseConfig((cnf) -> {
/**
* nacos config 默认 group=yuandian dataId=dataflow
* key1:
* key2:
* value
*/
log.info("{}",cnf.get("key1", "key2")); //value
return null;
});
```
#### set方法 赋值. keys必须存在, 否则异常
```java
Config.UseConfig((cnf) -> {
cnf.seek("key1", "key2").set("do_set"); // seek先定位keys
try {
cnf.update(); // 每个写操作都需要执行 update()
} catch (NacosException e) {
e.printStackTrace();
}
/**
* nacos config 默认 group=yuandian dataId=dataflow
* key1:
* key2:
* do_set
*/
cnf.seek("key1", "key2").set("do_set"); // seek先定位keys
try {
cnf.update(); // 每个写操作都需要执行 update()
} catch (NacosException e) {
e.printStackTrace();
}
return null;
});
```
#### setWithCreate方法 赋值. 如果key不存在就创建
```java
Config.UseConfig((cnf) -> {
ArrayList