【Nacos】Nacos Spring Cloud-配置中心


# Nacos(三)-Nacos Spring Cloud-配置中心 【Nacos】Nacos Spring Cloud-配置中心 - 图1科比3332020-01-09 15:17:45【Nacos】Nacos Spring Cloud-配置中心 - 图2135【Nacos】Nacos Spring Cloud-配置中心 - 图3收藏1分类专栏:学习文章标签:spring boot定位java版权【Nacos】Nacos Spring Cloud-配置中心 - 图4前两篇记录了下载安装nacos、使用nacos作为注册中心:Nacos(一)-下载安装Nacos(二)-Nacos Spring Cloud-注册中心本篇记录使用nacos作为配置中心,并通过配置页面修改配置进行动态刷新演示# 一、项目介绍 继续使用上一篇创建的项目nacos,创建新module cloud-config:【Nacos】Nacos Spring Cloud-配置中心 - 图5# 二、开发配置

1、添加依赖

pom.xml 1.8 Finchley.SR2
org.springframework.cloud spring-cloud-dependencies ${spring-cloud.version} pom import

  1. <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency><br /> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId> <version>0.9.0.RELEASE</version> </dependency><br /> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> </dependencies>主要包含:SpringCloud配置alibaba-nacos-config这里与注册中心不同的是config,两个可以单独使用#### 2、添加配置

bootstrap.propertiesspring.application.name=cloud-configserver.port=30400
spring.cloud.nacos.config.server-addr=192.168.1.125:88481234配置Nacos server 的地址和应用名这里配置文件必须使用bootstrap文件名,并且需要配置spring.application.name,具体原因见下面介绍 Nacos 配置管理dataId部分#### 3、编写接口 @RestController@RequestMapping(“user”)@RefreshScopepublicclassUserController{
@Value(“${userName:123}”)privateString userName;
@RequestMapping(“/get”)publicStringget(){returnuserName+” hello”;}}使用@Value注解读取配置userName;使用Spring Cloud原生注解@RefreshScope实现配置自动更新#### 4、验证 启动服务,并用postman访问接口:【Nacos】Nacos Spring Cloud-配置中心 - 图6注:这里因为读取的键为userName,读取的是电脑配置的用户名,使用其他名字将会打印123 hello# 三、修改配置 打开nacos页面配置列表,点“+”号:【Nacos】Nacos Spring Cloud-配置中心 - 图7新建配置【Nacos】Nacos Spring Cloud-配置中心 - 图8点击页面下方发布按钮,确认发布后,看服务日志:【Nacos】Nacos Spring Cloud-配置中心 - 图9再次访问接口:【Nacos】Nacos Spring Cloud-配置中心 - 图10可以看到配置已经更新# 四、配置分析

1、Data Id

Data Id 是nacos用来定定位配置内容的,完整格式为:${prefix}-${spring.profile.active}.${file-extension}1prefix:默认为spring.application.name,(也可以通过配置项 spring.cloud.nacos.config.prefix来配置)spring.profile.active: 即为当前环境对应的 profile,例如dev,当 spring.profile.active 为空时,对应的连接符 - 也将不存在,dataId 的拼接格式变成:${prefix}.${file-extension}1file-exetension : 为配置内容的数据格式,(可以通过配置项 spring.cloud.nacos.config.file-extension 来配置。目前只支持 properties 和 yaml 类型)因此,本例配置spring.application.name为cloud-config,配置文件格式为properties,则Data Id 为“cloud-config.properties”#### 2、Group 配合Data Id 一起定位配置内容,暂时不修改,使用默认即可DEFAULT_GROUP# 五、更多操作

1、查看历史版本

点击配置管理->历史版本,输入Data Id,Group,点击查询,可以看到配置的历史版本,并可以查看详情,或者回滚:【Nacos】Nacos Spring Cloud-配置中心 - 图11# 六、参考链接 Nacos Spring Cloud 快速开始Spring Cloud Alibaba基础教程:使用Nacos作为配置中心