久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

springboot系列(三)配置文件詳解

 新進(jìn)小設(shè)計(jì) 2020-05-25

引言:
Springboot有一個(gè)全局配置文件,,這個(gè)配置文件默認(rèn)是properties文件,,就是application.properties文件,其實(shí)還有一種文件,,就是yml文件,,只不過(guò)這種文件是需要自己創(chuàng)建的。這個(gè)配置文件是用來(lái)修改Springboot的默認(rèn)配置的,。比如說(shuō)當(dāng)我們集成了start-web之后,,Springboot默認(rèn)的web服務(wù)器是Tomcat,我們可以對(duì)Tomcat的默認(rèn)配置做一些處理,。配置文件能做的事情很多,,語(yǔ)法也很簡(jiǎn)單。

properties 文件

1.語(yǔ)法

key=value

比如配置Tomcat的端口:server.port=8081
對(duì)大小寫(xiě)敏感,。

2.優(yōu)先級(jí)

一般情況下,,properties可以在項(xiàng)目的4個(gè)地方存在,然后他們每個(gè)位置有不同的優(yōu)先級(jí),,并且,,不同名的時(shí)候application.properties的優(yōu)先級(jí)是最高的,就是說(shuō),,Springboot啟動(dòng)的時(shí)候,,他會(huì)自己掃描指定路徑下面的application.properties文件作為默認(rèn)的配置文件。
掃描的包路徑按照優(yōu)先級(jí)有下面四個(gè):

  1. file:./config/

  2. file:./

  3. classpath:/config/

  4. classpath:/

這么一說(shuō),,你可能不知道在哪,來(lái)張圖看看,,第一個(gè)就是項(xiàng)目根目錄下面的config文件下面的,,第二個(gè)就是根目錄下面的,第三個(gè)就是resources文件下面的config文件下面的,,最后一個(gè)是resources文件下面的,。

在這里插入圖片描述

按照這個(gè)優(yōu)先級(jí),Springboot啟動(dòng)的時(shí)候會(huì)掃描這些包,,然后將配置植入spring環(huán)境中,,如果遇到相同的配置,優(yōu)先級(jí)高的會(huì)覆蓋優(yōu)先級(jí)低的配置,,比如說(shuō)你有四個(gè)文件,,四個(gè)文件里面都配置了項(xiàng)目啟動(dòng)端口,,那么這個(gè)端口的配置只會(huì)用優(yōu)先級(jí)最高的那個(gè)文件的配置。遇到不同的配置,,這些配置就會(huì)互補(bǔ),,形成最大化的配置。

我們還可以通過(guò)spring.config.location 來(lái)改變默認(rèn)的配置文件位置,。但是需要先打包項(xiàng)目,,這一塊就留著后面再說(shuō),我會(huì)持續(xù)更新,!你也可以wx search 全棧學(xué)習(xí)筆記,!精彩美文每天推送!

3.自定義數(shù)據(jù)配置

配置文件除了能修改一些原本固有的配置,,還能自定義配置,。
自定義對(duì)象數(shù)據(jù):

在這里插入圖片描述
先定義一個(gè)student的對(duì)象,對(duì)象里面包含了常用的數(shù)據(jù)類(lèi)型,。

自定義的實(shí)體類(lèi):

在這里插入圖片描述

如果遇到j(luò)ava的駝峰命名,,在properties文件里面的命名就比較寬松,比如java里面用studentName,,我在properties里面既可以用studentName,,也可以用student-name,或者是student_name,都行,。
這就是自定義數(shù)據(jù)的配置,。下面看看怎么獲取這些數(shù)據(jù)。

4.獲取自定義數(shù)據(jù)配置

在配置文件中,,有一些配置是springboot可以直接獲得的,,有一些是不能獲取的,比如自定義的配置,,像server.port這種屬于原本有的默認(rèn)配置,,我們是做修改的。如果我們自定義了一些配置,,就像上面我們定義的一些數(shù)據(jù),,就需要用其他方法獲取了。

properties: 字符串默認(rèn)不用加上單引號(hào)或者雙引號(hào)
'' 單引號(hào),,會(huì)轉(zhuǎn)義特殊字符
"" 雙引號(hào)不會(huì)轉(zhuǎn)義特殊字符
yml也是一樣

項(xiàng)目結(jié)構(gòu)圖:

在這里插入圖片描述

1.通過(guò)prefix獲取

實(shí)體類(lèi)的代碼:

在這里插入圖片描述

說(shuō)明:將properties里面的student綁定到這個(gè)實(shí)體類(lèi)上面,,它會(huì)一一對(duì)應(yīng),這個(gè)源代碼應(yīng)該是用的反射和注解,,反射,,注解不會(huì)的可以看看我之前的文章哦!都是干貨。

controller里面的測(cè)試代碼:

在這里插入圖片描述
代碼填寫(xiě)完成之后重新運(yùn)行環(huán)境然后查看你的運(yùn)行端口,,我的運(yùn)行端口是8086
在這里插入圖片描述
在瀏覽器輸入:http://localhost:8085/student/getStudent

然后就能看到獲取到數(shù)據(jù)了,,獲取到的數(shù)據(jù):

在這里插入圖片描述

但是你會(huì)看到這個(gè)數(shù)據(jù)獲取到的中文是亂碼,在idea里面需要設(shè)置一下,。file->settings

在這里插入圖片描述

設(shè)置完成點(diǎn)apply,,這樣好像原來(lái)的中文就是亂碼了,然后你需要重新改回來(lái),,再重新啟動(dòng)項(xiàng)目就不會(huì)亂碼了,。

2.通過(guò)@value注解獲取

在這里插入圖片描述

這樣顯示的結(jié)果是只能獲取到一個(gè)name,$是一個(gè)占位符號(hào),,利用這種語(yǔ)法,,需要對(duì)實(shí)體類(lèi)的每個(gè)屬性一一對(duì)應(yīng),比較麻煩,。建議使用第一種方法,。

yml文件

1.語(yǔ)法

key空格:空格value

注意:空格不能少,大小寫(xiě)敏感
利用縮進(jìn)代表層級(jí)關(guān)系,,只要是縮進(jìn)一樣就代表是一級(jí)的

2.優(yōu)先級(jí)

在既有yml文件也有properties文件的時(shí)候(其實(shí)還有一種yaml,,和yml差不多的),yml加載順序是先于properties的,,所以優(yōu)先級(jí)是properties大于yml,,然后其他的情況下的優(yōu)先級(jí)和properties文件是一樣的。

3.自定義數(shù)據(jù)配置,。

自定義數(shù)據(jù)的和properties文件差不多,。寫(xiě)法上稍微有點(diǎn)差異,但是它的功能相對(duì)來(lái)說(shuō)比較強(qiáng)大,,代碼簡(jiǎn)潔,,可讀性高。
在這里插入圖片描述

4.獲取自定義數(shù)據(jù)配置

1.通過(guò)prefix

不管是yml,,還是properties文件,,獲取數(shù)據(jù)集都是一樣用法。

2.通過(guò)@value注解獲取

同上properties文件獲取的方式,。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn),。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,,謹(jǐn)防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類(lèi)似文章 更多