前序:
本着学习的精神,实测了nacos2.0.3搭建过程,没想到一步一坑,做一个小总结,也记录一下自己的辛酸历程。本人小白一枚,以下会引用别人的链接,如有不妥,请私信,定会处理。另外以下文章如有错误之处还望各位大佬指点一二,感谢~.~!
开整:
1,如果有小白可直接到评论,翻开第一条有视频地址,版本1.4.1进行学习
2,pom如下:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<modules>
<module>nacosConfigTest</module>
</modules>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.3.12.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.example</groupId>
<artifactId>NacosConfig</artifactId>
<packaging>pom</packaging>
<version>0.0.1-SNAPSHOT</version>
<name>NacosConfig</name>
<description>Demo project for Spring Boot</description>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<spring-cloud.version>Hoxton.SR12</spring-cloud.version>
<springboot.version>2.3.12.RELEASE</springboot.version>
<springcloudalibaba.version>2.2.7.RELEASE</springcloudalibaba.version>
</properties>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>${spring-cloud.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>${springboot.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-alibaba-dependencies</artifactId>
<version>${springcloudalibaba.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-bootstrap</artifactId>
<version>3.1.1</version>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
<version>2.2.1.RELEASE</version>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
2,yml 文件 注意:这里不建议用properties 配置文件,多次尝试,properties格式获取不到 nacos 配置中心数据,
spring:
cloud:
nacos:
discovery:
server-addr: 127.0.0.1:8850
username: nacos
password: nacos
config:
server-addr: 127.0.0.1:8850
username: nacos
password: nacos
# namespace: 7585116c-f8e6-4ded-ab99-539eb159941d
data-id: nacosConfig
auto-refresh: true
group: DEFAULT_GROUP
type: properties
bootstrap:
enable: true
log-enable: true
3,配置中心 测试类
注意:这里不能用 @RefreshScope 注解 ,个人测试用@RefreshScope ,改变配置中心变量,是不会自动更新数据的(1.4.1版本测试是可以用@RefreshScope注解)
@RestController
@RequestMapping("/nacos")
@Scope("refresh")
public class NaconConfigInfo {
@Value("${java00.name}")
public String name;
@Value("${java00.age}")
public String age;
@RequestMapping("/getConfigInfo")
private String gerNacosConfigInfo() {
return name + ":" + age;
}
}
4,2.0.3版本好象会自动注册到注册中心,到完成以上配置是可以在配置中心看到本地服务的,
本次学习结束,欢迎各位大佬指点
参考资料:
[1]Nacos学习教程: https://www.bilibili.com/video/BV1WZ4y1w7ww?from=search&seid=17556542868476320595&spm_id_from=333.337.0.0
[2] 大神踩坑历程:https://cloud.tencent.com/developer/article/1890698
[3]Nacos2.+ 教程: https://www.bilibili.com/video/BV18Q4y1y7GQ?p=5
https://cloud.tencent.com/developer/article/1890698