启动spring项目时无法加载nacos配置中心的配置
·
启动spring项目时无法加载nacos配置中心的配置
背景:本地有bootstrap.properties,内容如下

在nacos配置中心有如下配置:

测试代码如下:
@Value("${coupon.user.name}")
private String userName;
@Value("${coupon.user.age}")
private String userAge;
@RequestMapping("test")
public R test(){
return R.ok().put("name",userName).put("age",userAge);
}
无法运行的原因:spring无法读取bootstrap.properties文件,在spring cloud 2020.0.x版本及其以后的版本默认不读取bootstrap配置文件,而bootstrap配置文件影响Spring应用初始化属性。
解决方法:
在pom.xml文件中添加如下依赖:
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-bootstrap</artifactId>
<version>3.1.0</version>
</dependency>
启动测试类

运行成功
有小伙伴可能会问,既然spring cloud在2020.0.x版本以后都不再默认读取bootstrap配置文件,那我将配置信息放在application.properties中行不行?反正他们看起来都差不多
答案是不行
这是我之前的的做法,将配置信息放在application.properties文件

结果是无法读取。
我们这样理解,bootstrap.properties用于初始化创建spring本身。而application.properties用于spring创建完毕后再额外读取的其他信息,比如数据库。
更多推荐



所有评论(0)