【微服务~Nacos】Nacos之配置中心_原力计划

🔎这里是【微服务~Nacos】,关注我学习云原生不迷路
👍如果对你有帮助,给博主一个免费的点赞以示鼓励
欢迎各位🔎点赞👍评论收藏⭐️

👀专栏介绍

【微服务~Nacos】 目前主要更新微服务,一起学习一起进步。

👀本期介绍

本期主要介绍微服务~Nacos

文章目录

​搭建服务​

​创建服务​

​查询服务​

​整合知多少​

​nacos配置文件加载顺序​

搭建服务

  • 项目名:nacos-config-2.1

添加坐标:

【微服务~Nacos】Nacos之配置中心_原力计划_02

<dependencies>
<!-- web 启动器 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>

<!-- nacos 服务发现 -->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>

<!-- nacos 配置-->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>


</dependencies>
  • 创建yml配置文件:bootstrap.yml

【微服务~Nacos】Nacos之配置中心_原力计划_03

server:
port: 8072 # 端口号
spring:
application:
name: config-service # 服务名
cloud:
nacos:
config:
server-addr: 127.0.0.1:8848 # nacos 服务地址
prefix: ${spring.application.name} #data ID的前缀,默认服务名
file-extension: yaml # data ID的后缀:config-service.yaml
group: DEFAULT_GROUP # 组名
discovery:
server-addr: 127.0.0.1:8848 #nacos服务地址

创建服务

  • 编写启动类

【微服务~Nacos】Nacos之配置中心_nacos_04

package com.czxy.nacos;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;


@SpringBootApplication
public class TestNacosCloudConfigApplication {
public static void main(String[] args) {
SpringApplication.run(TestNacosCloudConfigApplication.class, args);
}
}
  • 编写处理类

【微服务~Nacos】Nacos之配置中心_微服务_05

package com.czxy.nacos.controller;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.cloud.context.config.annotation.RefreshScope;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;


@RestController
@RequestMapping("/config")
@RefreshScope
public class ConfigController {

@Value("${czxy.message:'默认值'}")
private String msg;

/**
* http://localhost:8072/config/get
*/
@RequestMapping("/get")
public String get() {
return msg;
}
}

查询服务

  • 情况1,访问“默认数据”

​ http://localhost:8072/config/get​

【微服务~Nacos】Nacos之配置中心_云原生_06

  • 情况2,访问yml文件配置信息
czxy:
message: 测试数据

【微服务~Nacos】Nacos之配置中心_微服务_07

  • 情况3:访问nacos中的配置数据

【微服务~Nacos】Nacos之配置中心_nacos_08

【微服务~Nacos】Nacos之配置中心_原力计划_09

整合知多少

  • 在 Nacos Spring Cloud 中,​dataId 的完整格式如下

${prefix}-${spring.profile.active}.${file-extension}

显示profile中的数据

  • 1)编写profile:application-demo.yml

【微服务~Nacos】Nacos之配置中心_原力计划_10

server:
port: 8073 # 端口号
czxy:
message: demo数据

 2)修改启动项

-Dspring.profiles.active=demo

【微服务~Nacos】Nacos之配置中心_nacos_11

3)删除nacos配置后,测试

【微服务~Nacos】Nacos之配置中心_nacos_12

nacos 默认配置

  • 1)nacos配置​​config-service.yaml​​ 的 Data ID

【微服务~Nacos】Nacos之配置中心_原力计划_13

2)测试

【微服务~Nacos】Nacos之配置中心_springcloud_14

nacos 配置 profile

  • 1)配置nacos profile :​​config-service-demo.yaml​

【微服务~Nacos】Nacos之配置中心_微服务_15

2)测试  

【微服务~Nacos】Nacos之配置中心_原力计划_16

nacos配置文件加载顺序

spring boot、nacos各种配置文件的加载顺序

1.bootstrap.yml

2.application.yml

3.application-[profile].yml

4.[serviceName].yml #nacos配置

5.[serviceName]-[profile].yml #nacos配置

  • 后面加载的文件,将覆盖前面文件的配置内容