springcloud对接nacos配置中心及注册中心
GITEE项目地址:springcloud_nacos: springboot2.6.9springcloud2021.0.1nacos2.2.2整合
一、配置中心
在DEV命名空间下,创建配置
先创建个全局配置,在创建个应用配置。配置可以分层级进行设置
1、全局参数配置
data ID: global.yaml
配置格式: yaml
配置内容:
wpen:
app:
version: 1.0.0
点击发布
2、应用参数配置
data ID: nacos-service-dev.yaml
配置格式: yaml
配置内容:
wpen:
app:
username: zhangsan
点击发布
二、应用程序配置及测试
nacos支持多级配置,可选配置内容:
spring:
cloud:
nacos:
# nacos用户名
#username: nacos
# nacos用户密码
#password: nacos
# nacos服务器地址
# server-addr: 192.168.17.1:8848
server-addr: 192.168.2.226:8848
# nacos配置中心相关
config:
# 开启nacos作为配置中心,默认值:true
enabled: true
# 作为配置中心的nacos服务器地址,默认值:${spring.cloud.nacos:server-addr}
#server-addr:
# 配置文件读取的nacos命名空间ID,默认值:public
namespace: DEV
# 配置文件在nacos命名空间中的分组,默认值:DEFAULT_GROUP
group: DEFAULT_GROUP
# 配置文件的文件前缀(配置文件名称),默认值:${spring.application.name}-${spring.profiles.active}
prefix: ${spring.application.name}-${spring.profiles.active}
# 配置文件的文件后缀(文件类型),默认值:properties
file-extension: yaml
# 配置内容的编码方式,默认值:UTF-8
encode: UTF-8
# 获取配置的超时时间,单位:ms,默认值:3000
timeout: 3000
# 开启监听和自动刷新,动态感知配置变化,默认值:true
refresh-enabled: true
# AccessKey
#access-key: 123
# SecretKey
#secret-key: 123
# 引入共享配置(同一分组) extension-configs的优先级高于shared-configs
#shared-configs:
# 配置支持共享的 Data Id
# - data-id: comm.yaml
# 配置 Data Id 所在分组,缺省默认 DEFAULT_GROUP
# group: DEFAULT_GROUP
# 配置Data Id 在配置变更时,是否动态刷新,缺省默认 false
# refresh: true
# 引入扩展配置(同一分组或不同分组)
extension-configs:
# 配置支持共享的 Data Id
- data-id: global.yaml
# 配置 Data Id 所在分组,缺省默认 DEFAULT_GROUP
group: DEFAULT_GROUP
# 配置Data Id 在配置变更时,是否动态刷新,缺省默认 false
refresh: true
编写个Controller,从配置中心2层结构中,读取配置参数
@RefreshScope
@RestController
@RequestMapping("/api")
public class ApiController {
@Value("${wpen.app.username}")
private String userName;
@Value("${wpen.app.version}")
private String version;
@GetMapping("/get-name")
public String kvAdd() {
return userName + ";" + version;
}
}
确定应用工程,分别读取到了2层配置文件
通过http访问接口
三、动态修改配置,实时生效
修改全局配置
通过http访问接口
修改应用级配置
通过http访问接口