本章节内容是没有开启nacos校验方式进行接入
集成环境:
java版本:JDK17
springboot版本:3.0.2
创建spring项目,我这里用到的是spring-cloud全家桶
首先是jar包依赖:
<properties><maven.compiler.source>17</maven.compiler.source><maven.compiler.target>17</maven.compiler.target><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><spring-cloud-dependencies.version>2022.0.0</spring-cloud-dependencies.version><spring-boot-dependencies.version>3.0.2</spring-boot-dependencies.version><spring-cloud-alibaba.version>2022.0.0.0-RC2</spring-cloud-alibaba.version></properties><dependencyManagement><dependencies><!-- springCloud --><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-dependencies</artifactId><version>${spring-cloud-dependencies.version}</version><type>pom</type><scope>import</scope></dependency><!-- springboot --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-dependencies</artifactId><version>${spring-boot-dependencies.version}</version><type>pom</type><scope>import</scope></dependency><!-- springcloud-alibaba --><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-alibaba-dependencies</artifactId><version>${spring-cloud-alibaba.version}</version><type>pom</type><scope>import</scope></dependency></dependencies>
</dependencyManagement>
具体jar包依赖:
<dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-bootstrap</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId></dependency><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId></dependency>
jar包spring-cloud-starter-bootstrap必须添加,
在SpringBoot 2.4.x
的版本之后,对于bootstrap.properties
/bootstrap.yaml
配置文件(我们合起来成为Bootstrap
配置文件)的支持,需要导入该jar包
编辑配置文件,配置文件名称为bootstrap.yaml或bootstrap.yml,连接远程配置中心的配置文件都要为bootstrap命名,他的优先级高于application。
如果用application.yml自定义配置内容在配置中心,程序读取不到。
bootstrap.yml内容如下:
spring:application:name: data-harbormain:allow-bean-definition-overriding: trueprofiles:active: project
spring.cloud.nacos:config:server-addr: localhost:8848file-extension: ymlgroup: KIRIN_GROUPnamespace: dd4c87d2-5e8d-41c6-ad7b-8f05fde1cd5
咱们的项目中先不添加application.properties文件
配置中心内容如下:
配置中心的文件名默认会找spring.application.name+文件类型file-extension
spring.application.name+文件类型file-extension的这个文件默认会被当做application文件
data-harbor.yml就会默认被当成这个项目的application配置文件
注意事项:
1、依赖是spring-cloud-starter-alibaba-nacos-config 2.2.1
2、远程配置中心Data Id命名和项目中spring.application.name+配置文件类型file-extension组成
3、项目配置文件名是bootstrap.yaml
4、引入配置内容类中要加@RefreshScope