隨機(jī)數(shù)設(shè)置及參數(shù)間引用

1.8 隨機(jī)數(shù)設(shè)置及參數(shù)間引用

?????????在Spring Boot配置文件中設(shè)置屬性時欧啤,除了可以像前面示例中顯示的配置屬性值外褪秀,還可以使用隨機(jī)值和參數(shù)間引用對屬性值進(jìn)行設(shè)置怀樟。下面,針對配置文件中這兩種屬性值的設(shè)置方式進(jìn)行講解?

?1.8.1隨機(jī)值設(shè)置

?????????在Spring Boot配置文件中筑舅,隨機(jī)值設(shè)置使用到了Spring Boot內(nèi)嵌的RandomValuePropertySource類座慰,對一些隱秘屬性值或者測試用例屬性值進(jìn)行隨機(jī)值注入 ?

?????????隨機(jī)值設(shè)置的語法格式為${random.xx},xx表示需要指定生成的隨機(jī)數(shù)類型和范圍翠拣,它可以生成隨機(jī)的整數(shù)版仔、uuid或字符串,示例代碼如下?

properties

my.secret=${random.value}???????? //配置隨機(jī)值

my.number=${random.int}?????????? //配置隨機(jī)整數(shù)

my.bignumber=${random.long}????? //配置隨機(jī)long類型數(shù)

my.uuid=${random.uuid}??????????? //配置隨機(jī)uuid類型數(shù)

my.number.less.than.ten=${random.int(10)}??? //配置小于10的隨機(jī)整數(shù)

my.number.in.range=${random.int[1024,65536]}

// 配置范圍在[1024,65536]之間的隨機(jī)整數(shù)

?????????上述代碼中心剥,使用RandomValuePropertySource類中random提供的隨機(jī)數(shù)類型邦尊,分別展示了不同類型隨機(jī)值的設(shè)置示例?

1.8.2參數(shù)間引用

?????????在Spring Boot配置文件中背桐,配置文件的屬性值還可以進(jìn)行參數(shù)間的引用优烧,也就是在后一個配置的屬性值中直接引用先前已經(jīng)定義過的屬性,這樣可以直接解析其中的屬性值了链峭。

使用參數(shù)間引用的好處就是畦娄,在多個具有相互關(guān)聯(lián)的配置屬性中,只需要對其中一處屬性預(yù)先配置弊仪,其他地方都可以引用熙卡,省去了后續(xù)多處修改的麻煩 ?

?????????參數(shù)間引用的語法格式為${xx},xx表示先前在配置文件中已經(jīng)配置過的屬性名励饵,示例代碼如下?

properties

app.name=MyApp

app.description=${app.name} is a Spring

Boot application

?????????上述參數(shù)間引用設(shè)置示例中驳癌,先設(shè)置了“app.name=MyApp”,將app.name屬性的屬性值設(shè)置為了MyApp役听;接著颓鲜,在app.description屬性配置中表窘,使用${app.name}對前一個屬性值進(jìn)行了引用 ?

?????????接下來,通過一個案例來演示使用隨機(jī)值設(shè)置以及參數(shù)間引用的方式進(jìn)行屬性設(shè)置的具體使用和效果甜滨,具體步驟如下 ?

?????????(1)打開Spring Boot項目resources目錄下的application.properties配置文件乐严,在該配置文件中分別通過隨機(jī)值設(shè)置和參數(shù)間引用來配置兩個測試屬性,示例代碼如下?

properties

# 隨機(jī)值設(shè)置以及參數(shù)間引用配置

tom.age=${random.int[10,20]}

tom.description=tom的年齡可能是${tom.age}

?????????在上述application.properties配置文件中衣摩,先使用隨機(jī)值設(shè)置了tom.age屬性的屬性值昂验,該屬性值設(shè)置在了[10,20]之間,隨后使用參數(shù)間引用配置了tom.description屬性 ?

????????(2)打開\項目的測試類艾扮,在該測試類中新增字符串類型的description屬性既琴,并將配置文件中的tom.description屬性進(jìn)行注入,然后新增一個測試方法進(jìn)行輸出測試泡嘴,示例代碼如下?

java

@Value("${tom.description}")

private String description;

@Test

public void placeholderTest() {

?????? System.out.println(description);

}


上述代碼中呛梆,通過@Value("${tom.description}")注解將配置文件中的tom.description屬性值注入到了對應(yīng)的description屬性中,在測試方法placeholderTest()中對該屬性值進(jìn)行了輸出打印磕诊。

執(zhí)行測試方法placeholderTest() 填物,查看控制臺輸出效果 ?

<img src="./images/image-20191225172004276.png"

alt="image-20191225172004276" style="zoom:80%;" />

?????????可以看出,測試方法placeholderTest()運(yùn)行成功霎终,并打印出了屬性description的注入內(nèi)容滞磺,該內(nèi)容與配置文件中配置的屬性值保持一致。接著莱褒,重復(fù)執(zhí)行測試方法placeholderTest()击困,查看控制臺輸出語句中顯示的年齡就會在[10,20]之間隨機(jī)顯示 ?

剛學(xué)了拉勾教育的《Java工程師高薪訓(xùn)練營》,看到剛學(xué)到的點(diǎn)就回答了广凸。希望拉勾能給我推到想去的公司阅茶,目標(biāo):字節(jié)!谅海!

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末脸哀,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子扭吁,更是在濱河造成了極大的恐慌撞蜂,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,490評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件侥袜,死亡現(xiàn)場離奇詭異蝌诡,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)枫吧,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,581評論 3 395
  • 文/潘曉璐 我一進(jìn)店門浦旱,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人九杂,你說我怎么就攤上這事颁湖〈” “怎么了?”我有些...
    開封第一講書人閱讀 165,830評論 0 356
  • 文/不壞的土叔 我叫張陵爷狈,是天一觀的道長植影。 經(jīng)常有香客問我,道長涎永,這世上最難降的妖魔是什么思币? 我笑而不...
    開封第一講書人閱讀 58,957評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮羡微,結(jié)果婚禮上谷饿,老公的妹妹穿的比我還像新娘。我一直安慰自己妈倔,他們只是感情好博投,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,974評論 6 393
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著盯蝴,像睡著了一般毅哗。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上捧挺,一...
    開封第一講書人閱讀 51,754評論 1 307
  • 那天虑绵,我揣著相機(jī)與錄音,去河邊找鬼闽烙。 笑死翅睛,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的黑竞。 我是一名探鬼主播捕发,決...
    沈念sama閱讀 40,464評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼很魂!你這毒婦竟也來了扎酷?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,357評論 0 276
  • 序言:老撾萬榮一對情侶失蹤莫换,失蹤者是張志新(化名)和其女友劉穎霞玄,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體拉岁,經(jīng)...
    沈念sama閱讀 45,847評論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,995評論 3 338
  • 正文 我和宋清朗相戀三年惰爬,在試婚紗的時候發(fā)現(xiàn)自己被綠了喊暖。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,137評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡撕瞧,死狀恐怖陵叽,靈堂內(nèi)的尸體忽然破棺而出狞尔,到底是詐尸還是另有隱情,我是刑警寧澤巩掺,帶...
    沈念sama閱讀 35,819評論 5 346
  • 正文 年R本政府宣布偏序,位于F島的核電站,受9級特大地震影響胖替,放射性物質(zhì)發(fā)生泄漏研儒。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,482評論 3 331
  • 文/蒙蒙 一独令、第九天 我趴在偏房一處隱蔽的房頂上張望端朵。 院中可真熱鬧,春花似錦燃箭、人聲如沸冲呢。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,023評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽敬拓。三九已至,卻和暖如春裙戏,著一層夾襖步出監(jiān)牢的瞬間恩尾,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,149評論 1 272
  • 我被黑心中介騙來泰國打工挽懦, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留翰意,地道東北人。 一個月前我還...
    沈念sama閱讀 48,409評論 3 373
  • 正文 我出身青樓信柿,卻偏偏與公主長得像冀偶,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子渔嚷,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,086評論 2 355

推薦閱讀更多精彩內(nèi)容