赞
踩
源码下载 https://yangjing191928.coding.net/public/spring-cloud-alibaba/spring-cloud-alibaba/git/files/nacos
nacos的配置中心和服务中心依赖的jar不是同一个
- <dependency>
- <groupId>com.alibaba.cloud</groupId>
- <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
- <version>0.9.0.RELEASE</version>
- </dependency>
注意:1、配置文件必须是bootstrap.properties或者bootstrap.yml,如果配置application.properties或者application.yml会导致加载不到配置;2、spring.cloud.nacos.config.namespace如果是默认的Public,则不需填写,否则获取不到配置信息.
bootstrap.yml
- # nacos配置
- server:
- port: 8071
-
- spring:
- application:
- name: user-service
-
- cloud:
- nacos:
- discovery:
- server-addr: localhost:8848 #Nacos服务注册中心地址
- config:
- server-addr: localhost:8848 #Nacos作为配置中心地址
- file-extension: yaml #指定yaml格式的配置
- #注意,如果不填写命名空间,默认使用public,public可以不用填写,但是如果使用自己的分组,需要填写
- #group: DEV_GROUP
- #namespace: 7d8f0f5a-6a53-4785-9686-dd460158e5d4
- group: DEFAULT_GROUP
- namespace: DEV
application.yml
我这个是在原来的基础上改的
- #server:
- # port: 8071
-
- #spring:
- # application:
- # name: user-service
- #
- # cloud:
- # nacos:
- # discovery:
- # server-addr: 127.0.0.1:8848
- spring:
- profiles:
- active: dev # 表示开发环境
- #active: test # 表示测试环境
- #active: info
nacos使用namespace进行环境隔离,可以指定不同的环境,更好的管理开发、测试、生产的配置文件管理。
配置管理 > 配置列表 > +
Data ID的格式如下:
参考:https://nacos.io/zh-cn/docs/quick-start-spring-cloud.html
${prefix}-${spring.profile.active}.${file-extension}
prefix 默认为 spring.application.name 的值,也可以通过配置项 spring.cloud.nacos.config.prefix来配置。
spring.profile.active 即为当前环境对应的 profile。 注意:当 spring.profile.active 为空时,对应的连接符 - 也将不存在,dataId 的拼接格式变成${prefix}.${file-extension}
。
file-exetension 为配置内容的数据格式,可以通过配置项 spring.cloud.nacos.config.file-extension来配置。目前只支持 properties 和 yaml 类型。
默认为DEFAULT_GROUP,可以对不同类型的微服务配置文件进行分组管理。配置文件通过
cloud: nacos: config: group: DEFAULT_GROUP # 分组的yml配置配置内容
配置文件格式支持一下几种TEXT、JSON、XML、YAML、HTML、Properties
新增一个Controller,代码如下:
- @RestController
- @RefreshScope //支持Nacos的动态刷新功能。
- public class ConfigClientController {
- @Value("${nacos.config}")
- private String configInfo;
-
- //http://localhost:8071/config/info
- @GetMapping("/config/info")
- public String getConfigInfo() {
- return configInfo;
- }
-
- }
范问后效果截图:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。