Nacos配置中心
一、项目中引入配置中心
#pom文件中引入依赖
<dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId> </dependency>
# 在resource目录中添加一个bootstrap.yaml文件。 spring: application: name: dxl-spring-cloud #服务名称 profiles: active: dev #开发环境 cloud: nacos: server-addr: 127.0.0.1:8848 config: file-extension: yaml #文件后缀名
两种配置命名方式都可以被读取到:
(1)[服务名]-[spring.profile.active].yaml, 环境配置。例如:orderService-dev.yaml
(2) [服务名].yaml, 多环境共享配置。例如:orderService.yaml
二、配置获取的步骤如下:
- 项目启动时,会先读取bootstrap.yaml文件。该文件的优先级比application.yaml要高。
- bootstrap.yaml文件中配置nacos地址、当前环境、服务名称、文件后缀名。这些决定了程序启动时取nacos读取哪个文件。
- 多种配置的优先级:服务名-profile.yaml > 服务名.yaml > 本地配置。
三、配置热更新
- 在使用配置的类上,添加注解@RefreshScope。需要在使用了@Value的注解的类上使用。
@Controller("/order") @RefreshScope public class OrderController { @Value("${order.dataFormat}") private String dataFormat; }
- 使用注解@ConfigurationProperties(prefix = "xxx")。
@Data @Component @ConfigurationProperties(prefix = "pattern") public class PatternProperties { private String dataFormat; }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端