Spring Boot教學
Spring Boot是什麼?
Spring Boot簡介
Spring Boot主要目標
Spring Boot快速入門
新項目爲什麼需要Spring Boot?
Spring Boot引導過程
Spring Boot核心和限制
Spring Boot Tomcat部署
Spring Boot優點和缺點
Spring Boot構建系統
Spring Boot入門
Spring Boot代碼結構
Spring Boot安裝
Spring Boot Bean和依賴注入
Spring Boot應用程序開發入門
Spring Boot運行器(Runner)
Spring Boot JSP應用實例
Spring Boot應用程序屬性
Spring Boot將WAR文件部署到Tomcat
Spring Boot日誌
Spring Boot Hello World(Thymeleaf)示例
Spring Boot構建RESTful Web服務
Spring Boot非web應用程序實例
Spring Boot異常處理
Spring Boot @ConfigurationProperties實例
Spring Boot攔截器
Spring Boot SLF4J日誌實例
Spring Boot Servlet過濾器
Spring Boot Ajax實例
Spring Boot Tomcat端口號
Spring Boot文件上傳示例(Ajax和REST)
Spring Boot Rest模板
Spring Boot文件上傳示例
Spring Boot文件處理
Spring Boot服務組件
Spring Boot Thymeleaf示例
Spring Boot使用RESTful Web服務
Spring Boot CORS支持
Spring Boot國際化
Spring Boot調度
Spring Boot啓用HTTPS
Spring Boot Eureka服務器
Spring Boost Eureka服務註冊
Spring Boot Zuul代理服務器和路由
Spring Boot雲配置服務器
Spring Boot雲配置客戶端
Spring Boot Actuator
Spring Boot管理服務器
Spring Boot管理客戶端
Spring Boot啓用Swagger2
Spring Boot創建Docker鏡像
Spring Boot跟蹤微服務日誌
Spring Boot Flyway數據庫
Spring Boot發送電子郵件
Spring Boot Hystrix
Spring Boot Web Socket
Spring Boot批量服務
Spring Boot Apache Kafka
Spring Boot單元測試用例
Spring Boot Rest控制器單元測試
Spring Boot數據庫源(連接數據庫)
Spring Boot保護Web應用程序

Spring Boot雲配置客戶端

某些應用程序可能需要更改配置屬性,開發人員可能需要將其關閉或重新啓動應用程序才能執行此操作。 但是,這可能會導致生產停機並需要重新啓動應用程序。 Spring Cloud Configuration Server允許開發人員加載新的配置屬性,而無需重新啓動應用程序,不需要任何停機。

使用Spring Cloud配置服務

首先,從 https://start.spring.io/ 下載Spring Boot項目,然後選擇Spring Cloud Config Client依賴項。 現在,在構建配置文件中添加Spring Cloud Starter Config依賴項。

Maven用戶可以將以下依賴項添加到pom.xml 文件中。

<dependency>
   <groupId>org.springframework.cloud</groupId>
   <artifactId>spring-cloud-starter-config</artifactId>
</dependency>

Gradle用戶可以將以下依賴項添加到build.gradle 文件中。

compile('org.springframework.cloud:spring-cloud-starter-config')

現在,需要將[@RefreshScope](https://github.com/RefreshScope "@RefreshScope")批註添加到主Spring Boot應用程序中。 [@RefreshScope](https://github.com/RefreshScope "@RefreshScope")註釋用於從Config服務器加載配置屬性值。

package com.example.configclient;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.context.config.annotation.RefreshScope;

@SpringBootApplication
@RefreshScope
public class ConfigclientApplication {
   public static void main(String[] args) {
      SpringApplication.run(ConfigclientApplication.class, args);
   }
}

現在,在application.properties 文件中添加配置服務器URL並提供應用程序名稱。

- 在啓動config客戶端應用程序之前,應運行http://localhost:8888配置服務器。

spring.application.name = config-client
spring.cloud.config.uri = http://localhost:8888

編寫簡單REST端點以從配置服務器讀取歡迎消息的代碼如下 -

package com.example.configclient;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.context.config.annotation.RefreshScope;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@SpringBootApplication
@RefreshScope
@RestController
public class ConfigclientApplication {
   @Value("${welcome.message}")
   String welcomeText;

   public static void main(String[] args) {
      SpringApplication.run(ConfigclientApplication.class, args);
   }
   @RequestMapping(value = "/")
   public String welcomeText() {
      return welcomeText;
   }
}

創建可執行的JAR文件,並使用以下Maven或Gradle命令運行Spring Boot應用程序 -

對於Maven,可以使用下面命令 -

mvn clean install

在「BUILD SUCCESS」之後,可以在target目錄下找到JAR文件。

對於Gradle,可以使用下面命令 -

gradle clean build

在構建顯示「BUILD SUCCESSFUL」之後,可在build/libs目錄下找到JAR文件。

現在,使用此處顯示的命令運行JAR文件:

java –jar <JARFILE>

現在,應用程序已在Tomcat端口8080上啓動。

在登錄控制檯窗口中看到; config-client應用程序從https://localhost:8888獲取配置:

2017-12-08 12:41:57.682  INFO 1104 --- [           
   main] c.c.c.ConfigServicePropertySourceLocator : 
   Fetching config from server at: http://localhost:8888

現在訪問URL:http://localhost:8080/ ,程序將從配置服務器加載歡迎消息。

Spring

現在,轉到配置服務器上的屬性值並點擊執行器端點 POST URL => http://localhost:8080/refresh並在URL=> http://localhost:8080/中查看新配置屬性值。