Nacos的版本有严格的限制,一点不对可能就报错,但是用起来比较好用,灵活性比较大,毕竟是开源的,看不顺眼的都可以改;
Springboot集成nacos通用的有alibabaCloud、nacos-config、SDK方式
这里我们使用springboot2.7.18集成alibabaCloud的方式,中间也踩了不少的坑,可能与我原来项目的集成太多组件有关系,在此来记录一下
nacos server : 2.5.1 部署就很简单了,就不再描述。
1、Maven环境准备
<!--Spring Boot依赖--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <exclusions> <!-- 去掉springboot自带的日志 ,使用的是log4j2.yml--> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-logging</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-log4j2</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <exclusions> <!-- 去掉springboot自带的日志 ,使用的是log4j2.yml--> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-logging</artifactId> </exclusion> </exclusions> <scope>test</scope> </dependency>
<!-- 配置文件读取包--> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId> <version>2021.0.5.0</version> <!-- 请根据实际情况选择合适的版本 --> </dependency> <!-- 服务发现包--> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId> <version>2021.0.5.0</version> <!-- 请根据实际情况选择合适的版本 --> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-bootstrap</artifactId> <version>3.1.0</version> </dependency>
2、新建bootstrap.yml文件
spring: application: name: im_web cloud: nacos: server-addr: 127.0.0.1:8848 config: server-addr: ${spring.cloud.nacos.server-addr} enabled: true refresh-enabled: true username: nacos password: nacos group: gzp #用于应用分组 discovery: # 注册中心地址 server-addr: ${spring.cloud.nacos.server-addr} username: nacos password: nacos group: gzp #用于应用分组
3、对应使用配置的controller service compent
4、nacos服务发现
5、根据自己配置所在配置文件选择对应dataId
6、配置动态更改