日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 前端技术 > javascript >内容正文

javascript

Spring Cloud的应用程序—上下文服务

發(fā)布時(shí)間:2023/12/10 javascript 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Spring Cloud的应用程序—上下文服务 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

2019獨(dú)角獸企業(yè)重金招聘Python工程師標(biāo)準(zhǔn)>>>

Spring Boot對(duì)于如何使用Spring構(gòu)建應(yīng)用程序有一個(gè)看法:例如它具有常規(guī)配置文件的常規(guī)位置,以及用于常見管理和監(jiān)視任務(wù)的端點(diǎn)。Spring Cloud建立在此之上,并添加了一些可能系統(tǒng)中所有組件將使用或偶爾需要的功能。

引導(dǎo)應(yīng)用程序上下文

一個(gè)Spring Cloud應(yīng)用程序通過創(chuàng)建一個(gè)“引導(dǎo)”上下文來(lái)進(jìn)行操作,這個(gè)上下文是主應(yīng)用程序的父上下文。開箱即用,負(fù)責(zé)從外部源加載配置屬性,還解密本地外部配置文件中的屬性。這兩個(gè)上下文共享一個(gè)Environment,這是任何Spring應(yīng)用程序的外部屬性的來(lái)源。Bootstrap屬性的優(yōu)先級(jí)高,因此默認(rèn)情況下不能被本地配置覆蓋。

引導(dǎo)上下文使用與主應(yīng)用程序上下文不同的外部配置約定,因此使用bootstrap.yml?application.yml(或.properties)代替引導(dǎo)和主上下文的外部配置。例:

bootstrap.yml

spring:application:name: foocloud:config:uri: ${SPRING_CONFIG_URI:http://localhost:8888}

如果您的應(yīng)用程序需要服務(wù)器上的特定于應(yīng)用程序的配置,那么設(shè)置spring.application.name(在bootstrap.yml或application.yml)中是個(gè)好主意。

您可以通過設(shè)置spring.cloud.bootstrap.enabled=false(例如在系統(tǒng)屬性中)來(lái)完全禁用引導(dǎo)過程。

應(yīng)用程序上下文層次結(jié)構(gòu)

如果您從SpringApplication或SpringApplicationBuilder構(gòu)建應(yīng)用程序上下文,則將Bootstrap上下文添加為該上下文的父級(jí)。這是一個(gè)Spring的功能,即子上下文從其父進(jìn)程繼承屬性源和配置文件,因此與不使用Spring Cloud Config構(gòu)建相同上下文相比,“主”應(yīng)用程序上下文將包含其他屬性源。額外的財(cái)產(chǎn)來(lái)源是:

  • “bootstrap”:如果在Bootstrap上下文中找到任何PropertySourceLocators,則可選CompositePropertySource顯示為高優(yōu)先級(jí),并且具有非空屬性。一個(gè)例子是來(lái)自Spring Cloud Config服務(wù)器的屬性。有關(guān)如何自定義此屬性源的內(nèi)容的說(shuō)明,請(qǐng)參閱下文。

  • “applicationConfig:[classpath:bootstrap.yml]”(如果Spring配置文件處于活動(dòng)狀態(tài),則為朋友)。如果您有一個(gè)bootstrap.yml(或?qū)傩?#xff09;,那么這些屬性用于配置引導(dǎo)上下文,然后在父進(jìn)程設(shè)置時(shí)將它們添加到子上下文中。它們的優(yōu)先級(jí)低于application.yml(或?qū)傩?#xff09;以及作為創(chuàng)建Spring Boot應(yīng)用程序的過程的正常部分添加到子級(jí)的任何其他屬性源。有關(guān)如何自定義這些屬性源的內(nèi)容的說(shuō)明,請(qǐng)參閱下文。

由于屬性源的排序規(guī)則,“引導(dǎo)”條目?jī)?yōu)先,但請(qǐng)注意,這些條目不包含來(lái)自bootstrap.yml的任何數(shù)據(jù),它具有非常低的優(yōu)先級(jí),但可用于設(shè)置默認(rèn)值。

您可以通過簡(jiǎn)單地設(shè)置您創(chuàng)建的任何ApplicationContext的父上下文來(lái)擴(kuò)展上下文層次結(jié)構(gòu),例如使用自己的界面,或使用SpringApplicationBuilder方便方法(parent(),child()和sibling())。引導(dǎo)環(huán)境將是您創(chuàng)建自己的最高級(jí)祖先的父級(jí)。層次結(jié)構(gòu)中的每個(gè)上下文都將有自己的“引導(dǎo)”屬性源(可能為空),以避免無(wú)意中將值從父級(jí)升級(jí)到其后代。層次結(jié)構(gòu)中的每個(gè)上下文(原則上)也可以具有不同的spring.application.name,因此如果存在配置服務(wù)器,則不同的遠(yuǎn)程屬性源。普通的Spring應(yīng)用程序上下文行為規(guī)則適用于屬性解析:子環(huán)境中的屬性通過名稱和屬性源名稱覆蓋父項(xiàng)中的屬性(如果子級(jí)具有與父級(jí)名稱相同的屬性源,一個(gè)來(lái)自父母的孩子不包括在孩子中)。

請(qǐng)注意,SpringApplicationBuilder允許您在整個(gè)層次結(jié)構(gòu)中共享Environment,但這不是默認(rèn)值。因此,兄弟情境尤其不需要具有相同的資料或財(cái)產(chǎn)來(lái)源,盡管它們與父母共享共同點(diǎn)。完整項(xiàng)目的源碼來(lái)源 技術(shù)支持1791743380

轉(zhuǎn)載于:https://my.oschina.net/u/3826344/blog/1834971

總結(jié)

以上是生活随笔為你收集整理的Spring Cloud的应用程序—上下文服务的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。