91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

springCloud config實現本地配置的方法

發布時間:2020-10-29 19:41:54 來源:億速云 閱讀:403 作者:Leah 欄目:開發技術

springCloud config實現本地配置的方法?相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。

配置config-server服務端

使用start.spring.io創建一個springcloud工程,pom中引入:

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

啟動類加上@EnableConfigServer注解:

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

在resources文件夾下創建properties文件夾,在properties文件夾下創建config-dev.properties文件存放配置信息。

springCloud config實現本地配置的方法

修改配置文件application.properties:

#項目啟動端口
server.port=8888
#配置文件在本地
spring.profiles.active=native
#配置文件地址
spring.cloud.config.server.native.search-locations=classpath:properties

關于配置文件的命名請參考這里,配置文件的名稱和路徑會分別代表不同的配置名稱和配置激活屬性:

/{application}/{profile}[/{label}]
/{application}-{profile}.yml
/{label}/{application}-{profile}.yml
/{application}-{profile}.properties

啟動項目并打開配置:http://localhost:8888/config/dev

springCloud config實現本地配置的方法

配置屬性

看到上面的信息則說明配置成功,這里我配置了一個項目的端口號:server.port,后面會用到。

配置 config-client客戶端

新建springboot工程,pom文件中加入:

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

在resources文件下加入配置文件bootstrap.properties,配置使用config-server的配置:

spring.cloud.config.name=config
spring.cloud.config.profile=dev
spring.cloud.config.uri=http://localhost:8888

在這里我們可以看到spring.cloud.config.name和spring.cloud.config.profile是和config-server中的config-dev.properties配置文件名字對應的。

啟動項目:我們可以看到配置的端口號8001生效了:

springCloud config實現本地配置的方法

這里有個小坑我記一下,springcloud config讀取git配置文件的時候,properties文件會出現中文亂碼的情況,所有我使用的是yml文件,不會出現亂碼的問題。網上搜了一下,有人說是spring加載Properties文件的 load方法輸入流的編碼是 ISO 8859-1。所以我避免麻煩使用yml文件。

git配置方法

server:

port: 8888

spring:

cloud:

config:

server:

git:

username: xxx

password: xxx

補充知識:spring cloud config 本地配置和遠程GIT部署 公共配置獲取

引言

在我們開發spring boot微服務框架時,經常會用到各種各樣的配置,而這些配置在我們沒有采用整體項目管理或者產品管理下,顯得很混亂,尤其是一些公共的配置,加上我們微服務模塊化,比如說要修改一個庫配置,或許要修改到各個模塊去整體調配,增加工作量的同時,對工作完全是一無是處的.

為此,對服務配置文件進行整體管理是必不可少的.然 ---spring cloud config在微服務架構下,應用而生,當然它的作用不止是這個大.

官網: https://cloud.spring.io/spring-cloud-config/

部署

服務端

1.既然是服務型的框架,那么它必然會有一個Server和一個Client來實現簡單的示例.和其他springboot或者cloud的一樣,我們既然要在項目中應用它,必是要導入或者引入包.官網明確給出了maven和gradle的配置語句.目前我在網上看的很多示例都加入了一些他們自己項目的東西,比如說eureka或者是amqp-消息配置或者一些負載均衡的包或者是配置可熱加載的包.這些信息涉及到更深的技術,之后慢慢理解,我們在這就只做cloud config的實現.

新建Server項目==>maven配置刷包==>編輯Applaction加注解;

springCloud config實現本地配置的方法

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

2.Server工程的配置可以是yml或者properties,自己按照自己的喜好.我這里用了yml;配置有標注,

2.1. 遠程GIT配置方法

server:
port: 7001 #Server端口,client訪問端口 端口默認8888

spring:
cloud:
config:
server:
git:
uri: https://*****/*******/****.git #遠程git倉庫
username: ########### #賬戶
password: ******** #密碼
search-paths: properties #搜索目錄
application:
name: config-server #名稱

2.2. 本地配置方法

server:
port: 7001 #Server端口,client訪問端口 端口默認8888

spring:
profiles:
active: native #告訴服務,我現在要啟用本地配置(優先考慮采用工程目錄resources下配置)
application:
name: config-server #名稱
cloud:
config:
server:
native:
search-locations: E:/Document/cloud_config/properties/ #明確采用該目錄下配置

3.養成看看原代碼的習慣,大部分看不懂邏輯,沒有切入點,哈哈!不過還是能看出來點端倪.

springCloud config實現本地配置的方法

3.一個configServer搞完,現在把它運行起來,似乎發現了它的運行原理.通過日志看代碼.

springCloud config實現本地配置的方法

springCloud config實現本地配置的方法

不難看除,原代碼原來是這個樣子,入口有了,更加方便查看源代碼的原理.看方法入參,似乎我們客戶端需要提供者幾個字段的配置.name profiles label...

客戶端

1.和服務端方式相同,接下來客戶端依舊是導包,加注解.接下來客戶端的配置需要在bootstrap.yml的配置.

spring:
application:
name: system-core #名稱

cloud:
config:
uri: http://localhost:7001 #server服務
name: system-core,datasource,reids #尋找配置文件(,)隔開是多個配置文件
profile: core
enabled: true #默認即時true,還是加上吧

1.1 我這里配置比較簡單,只要Server requestmapping認識就行,當然不同的配置對不同的項目使用更便利,自行研究吧,官網有一些配置的樣例,大家可以看看.網上的一些例子可能久遠,包含沒有所有,也可以看原代碼的類.來查看怎么配置,如何去查找配置文件的.

EnvironmentController

1.2 怎么讓一個項目訪問幾個或者公共配置,這里我們只要將spring.cloud.config.name字段屬性配置用逗號隔開寫不同的文件名即可,也是其他很多博客說是用spring.application.name,這種方法是錯誤的,不要采用.還有一種方法是我們什么也不做,只要在配置文件目錄加一個application.properties的文件,既可以每個微服務都默認訪問.

2.我們再來看看原代碼,了解一些配置和邏輯,這個配置就不會迷茫,也不會出現冗余的配置.

springCloud config實現本地配置的方法

3.運行起來.

遠程配置讀起來.

springCloud config實現本地配置的方法

本地配置讀起來.

springCloud config實現本地配置的方法

看完上述內容,你們掌握springCloud config實現本地配置的方法的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

乌兰察布市| 玉龙| 麟游县| 特克斯县| 沈丘县| 比如县| 班玛县| 历史| 浙江省| 昆山市| 汾西县| 安康市| 崇仁县| 海盐县| 佛山市| 文成县| 齐河县| 湘潭县| 外汇| 定兴县| 方城县| 监利县| 武隆县| 贵定县| 德昌县| 蒙山县| 新宁县| 永新县| 珲春市| 揭阳市| 十堰市| 宁海县| 磴口县| 子洲县| 保靖县| 赤城县| 确山县| 塘沽区| 施甸县| 望奎县| 双牌县|