国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

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

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

服務器之家 - 編程語言 - Java教程 - springcloud使用consul作為配置中心

springcloud使用consul作為配置中心

2021-05-08 11:14廖文文 Java教程

這篇文章主要介紹了springcloud使用consul作為配置中心,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

spring cloud 中文手冊:https://springcloud.cc/spring-cloud-consul.html

springcloud使用consul作為配置中心

也就是說在我們使用consul config時最好在consul 建立相應的目錄結構 適用于某一個服務的目錄結構以及適用于所有的服務的目錄結構

springcloud使用consul作為配置中心

本列consul web ui :springboot為我們提供了三種環境dev:默認開發環境  test:測試環境  prod:生產環境

springcloud使用consul作為配置中心

ps:

1.每次當我們修改consul上面的配置信息的時候,會向我們的代碼發送一個/refresh請求刷新我們的工程,通過使我們的取值動態的刷新,不需要重啟項目, 但是當我們使用@value進行取值的時候,雖然可會取到值也會刷新項目但是不會更改我們的取值,還是取到項目啟動時候配置在consul上面的值,實時刷新。

2.當我們在全局的application的文件中配置跟某一個服務列如:server-sms中配置相同的屬性時, server-sms這個項目啟動的時候默認是先去找自己目錄下面的配置,再去找全局的配置,如果自己目錄下

實戰:

pom.xml文件配置:

?
1
2
3
4
<dependency>
    <groupid>org.springframework.cloud</groupid>
    <artifactid>spring-cloud-starter-consul-config</artifactid>
</dependency>

bootstarp.xml配置:(如果配置在application里面,他不會生效,bootstrap.yml先比applciation.properties加載)

?
1
2
3
4
5
6
7
8
9
10
11
spring:
 cloud:
  consul:
   host: 100.1.00.0
   #host: 00.0.100.200
   port: 8500
   enabled: true
   config:
    enabled: true  #默認是true --
    format: yaml  # 表示consul上面文件的格式 有四種 yaml properties key-value files
    data-key: configuration  #表示consul上面的key值(或者說文件的名字) 默認是data

format舉例說明兩種(本列中使用的是server-sms項目的yaml):

properties:springcloud使用consul作為配置中心

yaml:springcloud使用consul作為配置中心

取值方式:

1.通過enabledconfigurationproperties注解取值(啟動項目后修改consul上的屬性值,項目中的屬性值立即發生變化):

對應的bean:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
//name要與consul上面的name寫的一樣,consul上面可以寫多級目錄 例如: userinfo: name: liaowenwen
//對應的寫configurationproperties(prefix="userinfo ") 如果項目使用中配置化東西比較多 建議采用這種形式 
 
@configurationproperties()
public class userinfo {
 
  private string name;//要與consul上面一致
 
  public string getname() {
    return name;
  }
 
  public void setname(string name) {
    this.name = name;
  }

controller代碼取值:

?
1
2
3
4
5
6
7
8
@autowired
private userinfo userinfo;
 
 
@apioperation(value="獲取consulinfo", notes="獲取consulinfo")
public string getconsulinfo() {
  return userinfo.getname();
}

項目啟動類:

?
1
2
3
4
5
6
@springbootapplication
@enablediscoveryclient
@enableconfigurationproperties({userinfo.class})
public class application {
  public static void main(string[] args){
    springapplication.run(application.class,args);}

2.通過value注解取值(項目啟動后修改consul上的值,項目中的值不發生變化,只有再次啟動項目獲取的值才是修改后的值,發送/refresh請求無效)

?
1
2
3
4
5
6
7
8
@value
private string name;
 
 
@apioperation(value="獲取consulinfo", notes="獲取consulinfo")
public string getconsulinfo(){
  return name;
}

3.static 取值

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
@component
@configuration
public class consulkv {
 
  public static string smsurl;
 
  public static string username;
 
  public static string password;
 
  @value("${ssbp.smsurl}")
  public void setsmsurl(string smsurl) {
    consulkv.smsurl = smsurl;
  }
 
  @value("${ccb.job.login.username}")
  public void setusername(string username) {
    consulkv.username = username;
  }
 
  @value("${ccb.job.login.password}")
  public void setpassword(string password) {
    consulkv.password = password;
  }

示例代碼地址: https://github.com/liaowenn/spring-cloud-consul-config

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

原文鏈接:https://blog.csdn.net/xiaonuo717/article/details/73289178

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 中文字幕一区二区三区四区 | 91精品久久久久久久久久入口 | 香蕉久久久久久 | 欧美激情一区二区 | 欧美日韩第一页 | 国产综合久久久 | 99青青草| 亚洲毛片在线 | 国产亚洲视频在线 | 99看| 成人午夜视频免费 | 中文视频一区 | 爱色av入口 | 中文字幕免费中文 | 91精品国产综合久久久久久丝袜 | 自拍偷拍在线视频 | 91大全| 欧美日韩干 | 日本少妇一区二区三区 | 国内成人免费视频 | 欧美中文字幕在线 | 久久久综合网 | 色综久久 | 九一精品国产 | 欧美.com| 成人网av | 午夜小视频在线观看 | 日韩av一区在线 | 欧美美女黄色网 | 欧美日韩午夜 | 精品亚洲一区二区三区四区五区 | a∨色狠狠一区二区三区 | 国产精品久久久久久久岛一牛影视 | 国产亚洲精品精品国产亚洲综合 | 久久99精品视频 | 91视频免费 | 一级大片一级一大片 | 国产精品毛片久久久久久久 | 国产精品一区三区 | 精品一区二区三区免费视频 | 在线国产一区二区 |