激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - 詳解SpringCloud mysql實現配置中心

詳解SpringCloud mysql實現配置中心

2021-05-31 11:40雨點的名字 Java教程

這篇文章主要介紹了詳解SpringCloud mysql實現配置中心,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

mysql實現配置中心

本公司配置數據的管理是通過mysql進行配置管理,因為已經搭建好了,所以自己動手重新搭建一遍,熟悉整個流程。有關項目源碼后期會補上github地址

微服務要實現集中管理微服務配置、 不同環境不同配置 、 運行期間也可動態調整 、 配置修改后可以自動更新的需求 ,spring cloud config同時滿足了以上要求。

一、項目搭建

本次主要用三個微服務

(1)eureka-server: 7001 注冊中心

(2)config-server : 5001 配置中心

(3)product-server : 8001 商品微服務

詳解SpringCloud mysql實現配置中心

1、eureka-server注冊中心

注冊中心很簡單,這里不在重復些,注冊中心沒有變化。可以看之前寫的博客 : springcloud(3)---eureka服務注冊與發現

2、配置中心微服務

 1、pom.xml

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<!--服務中心jar包-->
<dependency>
<groupid>org.springframework.cloud</groupid>
<artifactid>spring-cloud-starter-netflix-eureka-client</artifactid>
</dependency>
 
<!--配置中心jar包-->
<dependency>
<groupid>org.springframework.cloud</groupid>
<artifactid>spring-cloud-config-server</artifactid>
</dependency>
 
<!--連接msql數據庫相關jar包-->
<dependency>
<groupid>org.springframework.boot</groupid>
<artifactid>spring-boot-starter-jdbc</artifactid>
</dependency>
<dependency>
<groupid>mysql</groupid>
<artifactid>mysql-connector-java</artifactid>
<version>5.1.21</version>
</dependency>

2、application.yml

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#服務名稱
 server:
  port: 5001
 
#連接配置信息
 spring:
  application:
   name: config-server-jdbc
  profiles:
   active: jdbc
  cloud:
   config:
    server:
     default-label: dev
     jdbc:
      sql: select akey , avalue from config_server where application=? and aprofile=? and label=?
 #####################################################################################################
 # mysql 屬性配置
  datasource:
   driver-class-name: com.mysql.jdbc.driver
   url: jdbc:mysql://127.0.0.1:3306/test
   username: root
   password: root
 #####################################################################################################
 
#指定注冊中心地址
 eureka:
  client:
   serviceurl:
    defaultzone: http://localhost:7001/eureka/

這里主要講下連接配置信息

(1) spring.profiles.active=jdbc ,自動實現jdbcenvironmentrepository。

(2)sql語句自定義,否則會默認為“select key, value from properties where application=? and profile=? and label=?”,具體可以參考 jdbcenvironmentrepository 實現。

(3)本人數據庫建表為config_server,由于key,value和profile是mysql關鍵字,所以我都在最前面加了a。當然表名字段名都可以自定義。

(4) {application} 對應客戶端的"spring.application.name"屬性;

{aprofile} 對應客戶端的 "spring.profiles.active"屬性(逗號分隔的列表); 和

{label} 對應服務端屬性,這個屬性能標示一組配置文件的版本.

(5)只要 select出來是兩個字段 ,框架會 自動包裝到environment的map<key,value> 。

 3、mysql數據

詳解SpringCloud mysql實現配置中心

4、springboot啟動類

添加 @enableconfigserver 注解

?
1
2
3
4
5
6
7
8
@springbootapplication
@enableconfigserver
public class configserverapplication {
 
public static void main(string[] args) {
springapplication.run(configserverapplication.class, args);
  }
}

3、product-service微服務

1、pom.xml

?
1
2
3
4
5
6
7
8
9
10
<!--服務中心jar-->
    <dependency>
      <groupid>org.springframework.cloud</groupid>
      <artifactid>spring-cloud-starter-netflix-eureka-client</artifactid>
    </dependency>
    
    <!--配置中心客戶端jar-->
    <dependency>
      <groupid>org.springframework.cloud</groupid>
      <artifactid>spring-cloud-config-client</artifactid>

2、bootstrap.yml

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#指定注冊中心地址
eureka:
 client:
  serviceurl:
   defaultzone: http://localhost:7001/eureka/
 
#服務的名稱
spring:
 application:
  name: product-service
 #指定從哪個配置中心讀取
 cloud:
  config:
   discovery:
    service-id: config-server-jdbc
    enabled: true
   profile: dev
   label: dev
 
server:
 port: 8001

這里為什么用bootstrap.yml而不用application.yml,是因為若application.yml 和bootstrap.yml 在同一目錄下,

則 bootstrap.yml 的加載順序要高于application.yml ,即bootstrap.yml 會優先被加載。

為何需要把 config server 的信息放在 bootstrap.yml 里?

當使用 spring cloud 的時候,配置信息一般是從 config server 加載的,為了取得配置信息(比如密碼等),你需要一些提早的或引導配置。

因此,把 config server 信息放在 bootstrap.yml,用來加載真正需要的配置信息。

3、configcontroller類(測試用)

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
@restcontroller
@requestmapping("/api/v1/product")
public class configcontroller {
 
  @value("${item_url}")
  private string url;
 
  /**
   * 輸出url
   */
  @requestmapping("url")
  public void list(){
 
    system.out.println(url);
  }

4、測試

通過訪問:http://localhost:8001/api/v1/product/url 進入斷點。

詳解SpringCloud mysql實現配置中心

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。

原文鏈接:http://www.cnblogs.com/qdhxhz/p/9624386.html

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25
主站蜘蛛池模板: 欧美激情 在线播放 | 一级毛片在线看 | 99视频网址| 亚洲综人网| 91精品片| 国产成人在线视频 | 免费观看一区 | 亚洲一区播放 | 性感美女一级毛片 | 李宗瑞国产福利视频一区 | 大胆在线日本aⅴ免费视频 永久免费毛片 | 国产成人精品免费视频大全最热 | 色综合久久久久久久久久 | 欧美亚洲国产成人综合在线 | 毛片视频大全 | 亚洲日本韩国在线观看 | 国产毛片在线 | 亚洲国产精品久久久久久久久久久 | 日本高清视频网站www | 国产亚洲精品影达达兔 | 欧美一区二区黄色 | 国产黄色录像片 | 久久久久久久久久亚洲 | 鲁丝片一区二区三区免费入口 | 国产九九| 免费观看9x视频网站在线观看 | 麻豆自拍偷拍视频 | 精品乱码久久久久 | av久草| 在线小视频国产 | 天天看成人免费毛片视频 | 欧美一级免费在线观看 | 亚洲视屏在线 | 亚洲午夜影院在线观看 | 五月天影院,久久综合, | 国产精品视频一区二区三区四区五区 | 黑人一区二区 | 55夜色66夜色国产精品视频 | 欧美成人综合视频 | 日韩高清影视 | 在线播放污 |