文章28 | 阅读 12716 | 点赞0
applicaiton.yml是用户级的资源配置项
bootstrap.yml 是系统级别的,优先级更高
SpringCloud 会 创建一个Bootstrap Context,作为spring应用的Applicaiton Context,的父上下文,初始化的时候Bootstrap Context负责从外部源加载配置属性并解析配置 ,这两个上下文共享一个从外部获取 Environment,Bootstrap 属性有高优先级,默认情况下 他们不会本地配置覆盖,Bootstrap Context和Applicaiton Context有着 不同 的约定
所以新增一个 bootstrap文件 保证 Bootstrap Context 和Applicaiton Context 配置的分离
创建 分布式所需 yml 文件 uer.yml
创建好保存utf-8 保存文件
创建好上传到Github上
上传成功
microservicecloud-config-client-8090客户端
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-config</artifactId>
</dependency>
pom文件
<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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.xxx</groupId>
<artifactId>microservicecloud</artifactId>
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>microservicecloud-config-client-8090</artifactId>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-config</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-hystrix</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-eureka</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-config</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jetty</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>springloaded</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
</dependency>
</dependencies>
</project>
spring:
cloud:
config:
name: user #需要从github上读取的资源名称,注意没有yml后缀名
profile: kai #本次访问的配置项
label: master
uri: http://127.0.0.1:8089 #本微服务启动后先去找8089号服务
spring:
application:
name: user
package com.xxx;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.EnableEurekaClient;
import org.springframework.cloud.netflix.zuul.filters.discovery.PatternServiceRouteMapper;
@SpringBootApplication
public class UserConfigClientApp {
public static void main(String[] args) {
SpringApplication.run(UserConfigClientApp.class, args);
}
}
写个方法就可以测试 配置
打开页面访问
因为我在 bootstrap.yml开启 是 kai 所以是端口是8081
这样就是成功访问到了 说明 分布式配置生效 了
现在去bootstrap.yml开启 test 在去测试一下
版权说明 : 本文为转载文章, 版权归原作者所有 版权申明
原文链接 : https://blog.csdn.net/weixin_44520739/article/details/89526455
内容来源于网络,如有侵权,请联系作者删除!