殼叔搞笑時間
[ 你看看外面有人嗎 ] :
昨天去理發(fā),洗頭的時候旁邊一個大叔在刮胡子。
給他刮胡子的好像是個新來的妹子。
大叔:美女,你看看外面有人嗎?
妹子問怎么了嘛。
大叔:看外面沒人就把我殺了吧。
我看了一眼大叔的臉,好多血道子。
正文
這幾天買了本SpringCloud微服務構建,從頭開始讀,順便彌補一下之前的springboot知識的不足。
首先框架創(chuàng)建,我?guī)缀蹙筒幌胫貜土?,springboot 提倡結構簡單,開發(fā)迅速的特性[深受我的喜愛?。。。。
springboot 自動構建地址 http://start.spring.io
正文
自定義參數(shù)
我們經(jīng)常在配置文件定義一些我們需要的自定義屬性,然后我們需要在項目里去獲取自定義參數(shù)。
application.properties
bhusk.name=keshu
#我的內(nèi)心永遠18歲
bhusk.age=18
然后我們在項目里是可以通過@Value注解,來加載這些自定義參數(shù)的。
例如
@Component
public class Bhusk {
@Value("${bhusk.name}")
private String name;
@Value("${bhusk.age}")
private String age;
//此處自動忽略 Setter and Getter
}
@Value 注解加載屬性值的時候可以支持兩種表達式來進行配置,如下所示:
一種是上面介紹的PLaceHolder方式,格式為${xxx},大括號內(nèi)為PlaceHolder.
另一種是使用SpEL表達式 (spring expression language),格式為#{xxx},大括號內(nèi)為SpEL表達式。
參數(shù)引用
在application.properties中,各個參數(shù)可以直接使用PlaceHolder的方式進行引用,例如
bhusk.title=springboot-to-day
bhusk.desc=${bhusk.title} ,xxx
bhusk.desc 引用了bhusk.title的屬性,最后該屬性的值就是springboot-to-day ,xxx 。
使用隨機數(shù)
在一定特殊情況下,我們希望有些參數(shù)每次被加載的時候不是固定的值,是完全隨機的。
那么springboot在屬性配置文件中,可以通過¥{random} 配置來生成隨機的int值,long值,或者string值。
#${random}的配置方式主要有以下幾種,可供參考使用。
# 隨機字符串
bhusk.value=#{random.value}
# 隨機int
bhusk.number=#{random.int}
# 10以內(nèi)的隨機數(shù)
bhusk.test=${random.int(10)}
# 10~20的隨機數(shù)
bhusk.test2=${random.int(10~20)}
# 隨機long
bhusk.bignumber=${random.long}
該匹配值方式,可以應用端口等場景,以避免在本地調(diào)試時出現(xiàn)的端口沖突的麻煩。
本篇文章主要在,SpringBoot配置文件方面做一些總結。