创建Spring Boot工程
添加pom依赖
启动Nacos并增加环境配置文件
修改bootstrap.yaml并启动Spring Boot
1、创建 Spring Boot 工程
这里通过新建 Maven 工程的方式来创建 Spring Boot 工程
1.1、创建 Maven 工程
1.2、添加依赖
在新工程的 pom.xml 中添加如下内容:
<!-- 表明当前项目是一个 Spring Boot 工程 -->
<parent>
<groupId>org.springframework.boot</groupId>
<version>2.3.2.RELEASE</version>
<artifactId>spring-boot-starter-parent</artifactId>
</parent>
<dependencies>
<!-- nacos 依赖 -->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
<!-- 用于版本管理, 其他 dependency 无需再添加 version 管理 -->
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-alibaba-dependencies</artifactId>
<version>2.2.5.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
1.3、创建启动主类
新建 package,在 package 下新建类:
package com.wx;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class ConfigDemoApplication {
public static void main(String[] args) {
SpringApplication.run(ConfigDemoApplication.class);
}
}
注意:由于 pom.xml 文件中整合了 nacos ,如果此时运行启动类,项目会默认访问本地的 nacos 服务,即 http://localhost:8848 ,如果本地 nacos 服务未启动或者将 nacos 服务安装在其他服务器上,则会无法启动,不要着急,先往下看。
1.4 新建 bootstrap.yml 配置文件
在 resources 目录下, 创建 bootstrap.yml 配置文件
spring:
application:
name: configdemo # 服务名称, 与 nacos 中配置的 DataId 相同
cloud:
nacos:
config:
server-addr: 127.0.0.1 # nacos 安装的服务器ip
file-extension: yml
bootstrap.yml 是优先级最高的配置文件,因此将 nacos 安装在Linux服务器上的伙伴,需要在此文件中配置上 nacos 的地址。
1.5、在nacos中新建配置
1.6、新建 Controller 类
package com.wx;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class TestController {
@Value("${confValue}")
private String confValue;
@GetMapping("/test")
public String test() {
return confValue;
}
}
1.7、启动工程
启动工程后,可以看到启动端口为 8080:
而且已经成功整合并访问了 nacos 服务。
1.8、获取配置
在 TestController.java 中,会从配置文件中获取 confValue 的值,接下来访问 localhost:8080/test 类试试是否成功获取了配置:
1.9、动态刷新
上面已经成功从 nacos 中获取到了配置,但此时 nacos 中的配置是不是动态刷新到代码中的。
1.9.1、添加注解 @RefreshScope
@RestController
@RefreshScope
public class TestController {
@Value("${confValue}")
private String confValue;
@GetMapping("/test")
public String test() {
return confValue;
}
}
添加注解以后,会保证 nacos 中配置的修改,会实时同步并且刷新到项目中。
然后重启工程。
1.10、动态刷新展示
以上就是本文的全部内容,欢迎各位小伙伴提宝贵意见。