springboot bootstrap.yml nacos配置中心问题
作者:困知勉行1985 发布时间:2022-07-07 08:25:01
标签:springboot,bootstrap,nacos,配置中心
一.本地Nacos安装环境: Win7 ,JDK8 ,maven3.5
1.下载安装包
2.启动nacos服务,bin文件下下面startup.cmd
3.访问 http://localhost:8848/nacos
二.整合Springboot
Springboot版本如下
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.5.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
nacos的版本
<!--nacos-->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
<version>0.2.1.RELEASE</version>
</dependency>
1.在Springboot项目中添加 bootstrap.yml文件
目的在于:用于指定nacos的位置,(IP和端口)其他配置:例如项目名称,nacos中配置文件的文件类型,如yml,text等等
配置如下:
Note:这里并没有指定配置文件的名字,因为默认的配置文件名是gabriel.yaml,连接上配置中心后,会自动去获取这个默认的配置文件。
spring:
application:
name: gabriel
cloud:
nacos:
config:
server-addr: 127.0.0.1:8848
file-extension: yaml
2.在nacos页面上配置项目所需要的相关依赖
注意:
项目中的 application.name属性 必须要与nacos配置文件的名称相同(也就是说,如果不指定配置文件名字,想使用默认设置,那么服务名与nacos配置文件名必须相同)nacos配置文件,必须携带相应的后缀(这里是yaml),必须要与bootstrap.yml中配置的后缀一致,即如果配置了 file-extension: yaml ,则 nacos中的文件名必须是xxxx.yaml, 后面的yaml不能省略,否则会报错依赖名称必须要正确,这里如果引入了下面的依赖,虽然也会读取配置文件,但是无法启动自动刷新配置的功能(这个问题很坑)
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
<version>0.2.0.RELEASE</version>
</dependency>
配置文件的名字为 gabriel.yaml
3.在需要添加自动刷新的Controller类上
加入@RefreshScope注解,启动自动刷新nacos的配置
@RestController
@RequestMapping(value = "/test")
@RefreshScope
public class TestController {
@Value(value = "${service.name:}")
private String serverName;
/**
*
* @return
*/
@RequestMapping(value = "/get_nacos")
public String getNacos(){
System.out.println(serverName);
return serverName;
}
}
来源:https://blog.csdn.net/wdquan19851029/article/details/122968726
0
投稿
猜你喜欢
- Android中的异步消息机制分为四个部分:Message、Handler、MessageQueue和Looper。其中,Message是线
- 工作需要,要在一个Form里面实现一个实时预览的picturebox图像,由于picturebox可能会遮挡到其后面的画面,所以要求pict
- SpringBoot JPA分页查询指定列并返回指定实体用习惯Mybatis,没用过jpa 真是各种踩坑了脑壳疼,一个分页弄老半天,原来就一
- 本文实例为大家分享了SpringMVC实现上传下载文件的具体代码,供大家参考,具体内容如下一、SpringMVC专门提供了CommonsMu
- 一个项目中需要使用两个数据库,Oracle 和Mysql,于是参考各个blog,实现此功能。写好后才发现,原来的事务失效了,我去...spr
- 这篇文章主要介绍了线程池中使用spring aop事务增强,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要
- Java如何实现线程中断?通过调用Thread类的实例方法interrupt。如下:Thread thread = new Thread()
- 一、 java文件中获得路径Thread.currentThread().getContextClassLoader().getResour
- 本文实例为大家分享了java微信公众号支付示例代码,供大家参考,具体内容如下开始之前,先准备好:appid、商家号、商户密匙。工具类:MD5
- 目录1.说明2.先来说下@FunctionalInterface3. 下面来讲讲这个 "::"是干嘛的4. 建立一个Pe
- Spring使用AOP完成统一结果封装起因:自己写项目的时候忍受不了每个方法都要写一个retrun Result.success();和 r
- 1.最常用的方法是创建一个计数器,判断是否遇到‘\0',不是'\0'指针就往后加一。int my_strlen(co
- 一、网络爬虫的基本知识网络爬虫通过遍历互联网络,把网络中的相关网页全部抓取过来,这体现了爬的概念。爬虫如何遍历网络呢,互联网可以看做是一张大
- spring xml文件打开没有namespace等操作选项第一步查看自己安装的eclipse的正确的版本号:打开eclipse,点击hel
- 本文实例为大家分享了struts2和hibernate实现登录和注册功能,供大家参考,具体内容如下1、该项目使用MySQL数据库,数据库名为
- public void ProcessRequest (HttpContext context) { &n
- 一、前期准备我们要在IDEA上创建一个新的项目,创建好一个项目后,我们需要创建4个包,分别是英雄包,装备包,铭文包,野怪包,皮肤包然后我们就
- renameTo方法public boolean renameTo(File dest),File类中的renameTo方法可以操作文件或目
- protobuf 是 google的一个开源项目,可用于以下两种用途:(1)数据的存储(序列化和反序列化),类似于xml、json等;(2)
- 一.什么是SemaphoreSemaphore,俗称信号量,它是操作系统中PV操作的原语在java的实现,它也是基于AbstractQueu