真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

SpringCloudConfig配置Client讀取不到server配置文件

學(xué)習(xí)Spring Cloud Config 的時候,很容易遇到各種各樣的問題,這里我就把我遇到的:Client 端讀取不到Server端的配置文件中的屬性總結(jié)一下。

首先我搭建了一個Eureka 注冊中心,這里就不著重介紹了,不知道的小伙伴可以
網(wǎng)上查資料!

成都網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)公司!專注于網(wǎng)頁設(shè)計、重慶網(wǎng)站建設(shè)公司、微信開發(fā)、微信平臺小程序開發(fā)、集團成都企業(yè)網(wǎng)站建設(shè)等服務(wù)項目。核心團隊均擁有互聯(lián)網(wǎng)行業(yè)多年經(jīng)驗,服務(wù)眾多知名企業(yè)客戶;涵蓋的客戶類型包括:茶樓設(shè)計等眾多領(lǐng)域,積累了大量豐富的經(jīng)驗,同時也獲得了客戶的一致表揚!

1.搭建Config 配置中心

POM 文件:



    4.0.0
    
        org.springframework.boot
        spring-boot-starter-parent
        2.1.7.RELEASE
         
    
    com.sg.config
    config-demo
    0.0.1-SNAPSHOT
    config-demo
    Demo project for Spring Boot

    
        1.8
        Greenwich.SR2
    

    
        
            org.springframework.cloud
            spring-cloud-config-server
        
        
            org.springframework.cloud
            spring-cloud-starter-netflix-eureka-client
        

        
            org.springframework.boot
            spring-boot-starter-test
            test
        
        
            org.springframework.boot
            spring-boot-starter-web
        
    

    
        
            
                org.springframework.cloud
                spring-cloud-dependencies
                ${spring-cloud.version}
                pom
                import
            
        
    

    
        
            
                org.springframework.boot
                spring-boot-maven-plugin
            
        
    


這里面Config用到的依賴是 spring-cloud-config-server ,其他自己看著引入即可

2.application.yml 的配置

server:
  port: 8095
spring:
  application:
    name: config-demo
  cloud:
    config:
      server:
        git:
          uri: https://github.com/****/spring-cloud-demo.git
          username:
          password: 
          search-paths: spring-cloud-demo-config
eureka:
  client:
    service-url:
      defaultZone: http://127.0.0.1:8090/eureka/
    register-with-eureka: true
    fetch-registry: true

Config Server 的配置主要是spring.cloud.config.server.git 下面的東西,其他按需配置即可。

3.Config Server 啟動類

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
import org.springframework.cloud.config.server.EnableConfigServer;

@SpringBootApplication
@EnableConfigServer
@EnableDiscoveryClient
public class ConfigDemoApplication {

    public static void main(String[] args) {
        SpringApplication.run(ConfigDemoApplication.class, args);
    }

}

至此 Config Server 端就配置完成了。

4.配置Config Client 端

首先引入依賴



    4.0.0
    
        org.springframework.boot
        spring-boot-starter-parent
        2.1.6.RELEASE
         
    
    com.sg.eureka.client
    eureka-client-demo
    0.0.1-SNAPSHOT
    eureka-client-demo
    Demo project for Spring Boot

    
        1.8
        Greenwich.SR2
    

    
        
            org.springframework.boot
            spring-boot-starter-web
        
        
            org.springframework.cloud
            spring-cloud-starter-netflix-eureka-client
        

        
            org.springframework.boot
            spring-boot-starter-test
            test
        
        
            com.sg.common
            spring-cloud-common
            0.0.1-SNAPSHOT
        
        
        
            org.springframework.cloud
            spring-cloud-starter-config
        
    

    
        
            
                org.springframework.cloud
                spring-cloud-dependencies
                ${spring-cloud.version}
                pom
                import
            
        
    

    
        
            
                org.springframework.boot
                spring-boot-maven-plugin
            
        
    

主要有關(guān)的依賴是 spring-cloud-starter-config ,其他的按需引入即可

5.application.yml 配置文件
server:
  port: 8091
spring:
  application:
    name: eureka-client-demo
  cloud:
    config:
      profile: test
      uri: http://127.0.0.1:8095/
      label: master
      discovery:
        enabled: true
        service-id: config-demo

eureka:
  client:
    register-with-eureka: true
    fetch-registry: true
    service-url:
      defaultZone: http://127.0.0.1:8090/eureka/

### 端點控制
management:
  endpoints:
    web:
      exposure:
        # 開啟指定端點
        include: hystrix.stream

project:
  name: hahha

啟動類上什么配置也不用添加,就可以了,重要的一點:
1:如果用了Eureka ,則需要配置 spring.cloud.config.discovery.enable: true 和 spring.cloud.config.discovery.service-id: config-demo 這兩個屬性

6.讀取Server中配置的屬性 
package com.sg.eureka.client.controller;

import com.sg.common.vo.UserVO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Configuration;
import org.springframework.core.env.Environment;
import org.springframework.web.bind.annotation.*;

/**
 * @author liuhailong
 * @date 2019-08-08
 */
@RestController
@RequestMapping(value = "users")
@Configuration
public class UserController {

    @Autowired
    private Environment environment;

    @Value("${project.name}")
    private String name;

    @GetMapping(value = "/config")
    public String getConfig(@RequestParam("key")String key){
        return environment.getProperty(key);
    }

    @GetMapping(value = "/projectName")
    public String projectName(){
        return name;
    }

}

我這里用了 兩種方式去讀取配置文件中的內(nèi)容
1:使用Spring core中的Environment 類 中的getProperty 可以取到
2:使用Spring 的 @Value("${project.name}") 注解

6.接下來驗證一下:訪問 http://localhost:8091/users/config?key=project.name 結(jié)果發(fā)現(xiàn)獲取不到Config Server中配置的參數(shù)。
主要原因:
Spring Cloud 會首先加載bootstrap.yml 和bootstrap.properties 配置文件,然后再去加載spplication.properties 配置文件,所以在Config client 中的配置文件名稱要修改為 bootstrap.yml 。然后在讀取配置中心Config Server 中的 eureka-client-demo-test 的配置文件,這樣就可以讀取到了。

網(wǎng)站題目:SpringCloudConfig配置Client讀取不到server配置文件
新聞來源:http://weahome.cn/article/gcoesc.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部