引入配置管理依赖
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>
添加bootstrap.yml文件,该文件优先级高于application.yml
spring:
application:
name: userService # 服务名称
profiles:
active: dev # 开发环境
cloud:
nacos:
server-addr: localhost:8848 # Nacos地址
config:
file-extension: yaml # 文件后缀名
将application.yml中重复的配置删去
启动的时候添加环境变量spring.cloud.bootstrap.enabled=true
,不然扫描不到bootstrap.yml文件
这样他就会去nacos读取userService-dev.yaml
文件了
配置热更新
1.通过@Value注解注入的属性,想实现热更新,在其所在的类上面加上@RefreshScope注解
2.通过@ConfigurationProperties注解注入的属性,自动热更新
多环境共享的配置
微服务启动时会从nacos读取多个配置文件:
[spring.application.name]-[spring.profiles.active].yaml,例如:userservice-dev.yaml
[spring.application.name].yaml,例如:userservice.yaml
无论profile如何变化,[spring.application.name].yaml这个文件一定会加载,因此多环境共享的配置可以写入这个文件
配置文件优先级:
nacos中的配置(服务名-profile.yaml > 服务名.yaml)> 本地配置
关于平常用的日期格式
yyyy-MM-dd HH:mm:ss