得自己上传配置文件
他的配置文件有一个data-id ,格式是
${spring.application.name}-${spring.profile.active}.${spring.cloud.nacos.config.file-extension}
//如果有 spring.cloud.nacos.config.prefix 的话data-id 就是
${spring.cloud.nacos.config.prefix}-${spring.profile.active}.${spring.cloud.nacos.config.file-extension}
//其中的这个 file-extension 支持的有两种格式 yaml 和 properties
项目在bootstrap.yml里边配置你的nacos地址,
//如以下的配置信息
spring:
profiles:
active: @profileActive@
application:
#这里需要改
name: client-@profileActive@
cloud:
nacos:
discovery:
server-addr: 127.0.0.1:8848
config:
server-addr: 127.0.0.1:8848
#server-addr: 127.0.0.1:8848
file-extension: yaml
#这里需要改
prefix: client
refreshable-dataids: reim-@profileActive@.yaml,share-@profileActive@.yaml
shared-dataids: share-@profileActive@.yaml
main:
allow-bean-definition-overriding: true
按照上边的bootstrap.yml配置的话,他会把你的服务注册到本地的8848的nacos上,这个时候你的data-id按照上边的公式来说就是
client-@profileActive@.yaml 你需要在nacos的配置项里边添加一个 client-@profileActive@.yaml 的配置,然后把你的配置信息写在里边,
他启动的时候会先找共享的配置文件,然后在加载自己独有的配置文件,然后在跟你本地的bootstrap.yml合并起来组成一个配置文件,
共享的也就是那个 shared-dataids: 他会先去找那个共享的配置文件(share-@profileActive@.yaml),
然后那个refreshable-dataids:他的意思是哪些配置文件刷新的时候你的项目配置会自动刷新,想要不重启项目刷新配置文件的话需要在使用 @Value的类上添加上 @RefreshScope注解,你的nacos配置修改保存之后,他就会自动刷新@Value引用的值