1. 配置中心
配置中心用于应用属性配置统一管理,动态修改实时生效。
所以在应用接入时请根据有无上述需求决定是否接入配置中心,具体的接入流程如下:
1.点击应用中心-应用探针,点击对应需要开启配置中心的应用配置管理
2.开启配置中心客户端服务,保存修改,发布,重启应用
客户端使用
- 通过服务调用
引入配置中心客户端服务 ZeusConfig
@NextAutowired(required = false)
private ZeusConfig zeusConfig;
服务方法说明
public interface ZeusConfig {
/**
* 获取指定key配置值并转为Sting值返回,获取不到返回默认值
*
* @param key 指定key
* @param defaultValue 默认值(获取不到则返回默认值)
* @return 配置值
*/
public String getString(String key, String defaultValue);
/**
* 获取指定key配置值并转为Sting值返回,并且注册配置文件监听,获取不到返回默认值
*
* @param key 指定key
* @param defaultValue 默认值(获取不到则返回默认值)
* @param listener 监听方法,当配置文件发生变化的时候会回调该方法<br>
* (注:返回的是所有变动的key事件, 可以根据isChange方法来判断是否指定key发生变化。这样做是为了减少事件触发次数,一般建议通过监听注解
* 或者addListener方法来单独处理各个key变动)
* @return 配置值
*/
public String getString(String key, String defaultValue, ConfigChangeListener listener);
/**
* 获取指定key配置值并转为int值返回,获取不到返回默认值
*
* @param key 指定key
* @param defaultValue 默认值(获取不到则返回默认值)
* @return 配置值
*/
public Integer getInteger(String key, int defaultValue);
/**
* 获取指定key配置值并转为int值返回,并且注册配置文件监听,获取不到返回默认值
*
* @param key 指定key
* @param defaultValue 默认值(获取不到则返回默认值)
* @param listener 监听方法,当配置文件发生变化的时候会回调该方法<br>
* (注:返回的是所有变动的key事件, 可以根据isChange方法来判断是否指定key发生变化。这样做是为了减少事件触发次数,一般建议通过监听注解
* 或者addListener方法来单独处理各个key变动)
* @return 配置值
*/
public Integer getInteger(String key, int defaultValue, ConfigChangeListener listener);
/**
* 获取指定key配置值并转为Boolean值返回,获取不到返回默认值
*
* @param key 指定key
* @param defaultValue 默认值(获取不到则返回默认值)
* @return 配置值
*/
public Boolean getBoolean(String key, Boolean defaultValue);
/**
* 获取指定key配置值并转为Boolean值返回,并且注册配置文件监听,获取不到返回默认值
*
* @param key 指定key
* @param defaultValue 默认值(获取不到则返回默认值)
* @param listener 监听方法,当配置文件发生变化的时候会回调该方法<br>
* (注:返回的是所有变动的key事件, 可以根据isChange方法来判断是否指定key发生变化。这样做是为了减少事件触发次数,一般建议通过监听注解
* 或者addListener方法来单独处理各个key变动)
* @return 配置值
*/
public Boolean getBoolean(String key, Boolean defaultValue, ConfigChangeListener listener);
/**
* 获取指定key配置值并转为Float值返回,获取不到返回默认值
*
* @param key 指定key
* @param defaultValue 默认值(获取不到则返回默认值)
* @return 配置值
*/
public Float getFloat(String key, Float defaultValue);
/**
* 获取指定key配置值并转为Float值返回,并且注册配置文件监听,获取不到返回默认值
*
* @param key 指定key
* @param defaultValue 默认值(获取不到则返回默认值)
* @param listener 监听方法,当配置文件发生变化的时候会回调该方法<br>
* (注:返回的是所有变动的key事件, 可以根据isChange方法来判断是否指定key发生变化。这样做是为了减少事件触发次数,一般建议通过监听注解
* 或者addListener方法来单独处理各个key变动)
* @return 配置值
*/
public Float getFloat(String key, Float defaultValue, ConfigChangeListener listener);
/**
* 添加配置文件监听
*
* @param listener 配置文件监听
*/
public void addListener(ConfigChangeListener listener);
/**
* 移除配置文件监听
*
* @param listener 配置文件监听
*/
public void removeListener(ConfigChangeListener listener);
/**
* 更新配置文件监听
*
* @param newListener 要添加的配置文件监听
* @param oldListener 要移除的配置文件监听
*/
public void updateLstener(ConfigChangeListener newListener, ConfigChangeListener oldListener);
}
- 通过注解获取配置
ZuesConfigChangeListener
用于监听指定key值变化,注解在方法之上。字段说明
keys:要监听的key列表
isAllChange:是否监听的key都变动才触发该方法
keyExpression:匹配key,表达式*匹配一个字符,**匹配多个字符,**a:匹配a结尾字符,*a:匹配a前面至于有一个字符(可以和keys一起使用,结果为合集)
ZuesConfigPropertyChangeListener
用于监听bean属性变化,用户bean类上。字段说明
value:触发的该bean的方法名
isAllChange:true:表示该bean所有keys都变更了监听才触发,false:表示其中有一个key变更了就触发