spring cloud alibaba 笔记(nacos 篇二.服务配置中心以及动态刷新)

1.首先创建一个springboot 项目
     在 pom.xml中加入 ,注意。需要版本号。坑了一个小时。死活拿不到nacos上面的配置。原来版本号的问题、

<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
<version>0.9.0.RELEASE</version>
</dependency>

2.在 resoures 文件夹下面加一个 bootstrap.yml 或者 bootstrap.properties 文件。

补充: bootstrap与application
(1)加载顺序
这里主要是说明application和bootstrap的加载顺序。

bootstrap.yml(bootstrap.properties)先加载
application.yml(application.properties)后加载
bootstrap.yml 用于应用程序上下文的引导阶段。

bootstrap.yml 由父Spring ApplicationContext加载。

父ApplicationContext 被加载到使用 application.yml 的之前。

(2)配置区别
bootstrap.yml 和application.yml 都可以用来配置参数。

bootstrap.yml 可以理解成系统级别的一些参数配置,这些参数一般是不会变动的。
application.yml 可以用来定义应用级别的。

3.在bootstrap.yml 添加一下内容

server:
port: 5555
spring:
application:
name: config
cloud:
nacos:
config:
server-addr: localhost:8848
file-extension: yml
  profiles:
active: dev

 说明一下:   name:指的是服务的名字

                  server-addr: nacos的ip与端口

                  file-extension: 配置内容的数据格式,目前只支持: yaml 以及 properties

                 active: dev 表示开发环境

4.在Nacos中添加配置信息
4.1.Nacos中的匹配规则
理论: Nacos中的datatid的组成格式及与SpringBoot配置文件中的匹配规则
在Nacos Spring Cloud中,dataId的完整格式如下:

${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-extension为配置内容的数据格式,可以通过配置项为spring.cloud.nacos.config.file-extension来配置。目前只支持propertiesyaml类型。

 

 注意Data ID的命名

 

 

5. 在springboot项目加入   @RefreshScope 注解。动态刷新

 

 然后接下来访问 项目。

 

 再修改nacos 上面配置文件的

 

 再次访问

 

 

            

  

 

posted @ 2021-03-18 09:33  小羊小恩  阅读(659)  评论(0编辑  收藏  举报