小小又開始學習了,此次學習的內容是Spring Cloud 相關內容,此次學習的是Config相關的內容。
經過git完成分佈式的配置文件的部署,達到更新git,就能夠更新配置信息的功能、git
這裏配置Server端
添加相關的依賴github
<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-config-server</artifactId> </dependency>
server: port: 8080 spring: application: name: spring-cloud-config-server cloud: config: server: git: uri: https://github.com/meteor1993/SpringCloudLearning # git倉庫的地址 search-paths: chapter6/springcloud-config # git倉庫地址下的相對地址,能夠配置多個,用,分割。 username: #Git倉庫用戶名 password: #Git倉庫密碼
其中,uri代表git的配置地址,search-paths代表git相關的配置路徑,這裏使用git做爲分佈式的配置文件的存儲web
其配置文件的路徑爲spring
SpringCloudLearning/chapter6/springcloud-config/springcloud-config-pro.properties 訪問地址爲 https://github.com/meteor1993/SpringCloudLearning/blob/master/chapter6/springcloud-config/springcloud-config-pro.properties
這裏添加EnableConfigServer類相關的註解,bootstrap
用於激活Spring Cloud 對配置中心的相關激活app
package com.example.demo; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cloud.config.server.EnableConfigServer; @SpringBootApplication @EnableConfigServer public class DemoApplication { public static void main(String[] args) { SpringApplication.run(DemoApplication.class, args); } }
這個時候訪問 http://localhost:8080/springcloud-config/pro 就能夠實現對配置文件信息的訪問
其中springcloud-config爲配置中心的文件名稱。pro爲對應的相關的配置文件。
這裏對應的相關的配置文件,命名有maven
springcloud-config-dev.properties 對應於dev開發模式 springcloud-config-pro.properties 對應於pro開發模式 springcloud-config-test.properties 對應於test開發模式
其訪問的pro更改成相關的配置類型便可分佈式
訪問鏈接 http://localhost:8080/springcloud-config/pro 便可看到相關的配置信息學習
前面服務端已經訪問完成,這裏訪問客戶端this
<!-- https://mvnrepository.com/artifact/org.springframework.cloud/spring-cloud-starter-config --> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-config</artifactId> <version>2.2.3.RELEASE</version> </dependency>
這裏配置文件分爲兩個配置文件,分別爲application.yml 和 bootstrap.yml 這兩個配置文件
這裏配置application.yml 配置文件
server: port: 8081 spring: application: name: spring-cloud-config-client
spring: cloud: config: name: springcloud-config profile: dev uri: http://localhost:8080/ label: master
這樣就完成了一次的配置文件書寫。
其中name爲配置git的name,profile對應於版本。url對應於server的信息,label對應於相關的分支。
package com.springcloud.configclient; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication public class ConfigClientApplication { public static void main(String[] args) { SpringApplication.run(ConfigClientApplication.class, args); } }
添加配置信息的讀取類
package com.springcloud.configclient.controller; import org.springframework.beans.factory.annotation.Value; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; /** * @Author: shiyao.wei * @Date: 2019/7/4 16:19 * @Version: 1.0 * @Desc: */ @RestController public class HelloController { @Value("${springcloud.hello}") private String hello; @RequestMapping("/hello") public String from() { return this.hello; } }
這樣,就完成了配置信息的統一讀取