国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > Java > 正文

Spring Boot 配置隨機(jī)數(shù)的技巧代碼詳解

2024-07-14 08:40:59
字體:
供稿:網(wǎng)友

Spring Boot支持在系統(tǒng)加載的時(shí)候配置隨機(jī)數(shù)。

添加config/random.properties文件,添加以下內(nèi)容:

#隨機(jī)32位MD5字符串user.random.secret=${random.value}#隨機(jī)int數(shù)字user.random.intNumber=${random.int}#隨機(jī)long數(shù)字user.random.longNumber=${random.long}#隨便uuiduser.random.uuid=${random.uuid}#隨機(jī)10以內(nèi)的數(shù)字user.random.lessTen=${random.int(10)}#隨機(jī)1024~65536之內(nèi)的數(shù)字user.random.range=${random.int[1024,65536]}

添加綁定類:

import org.springframework.boot.context.properties.ConfigurationProperties;import org.springframework.context.annotation.PropertySource;import org.springframework.stereotype.Component;@Component@ConfigurationProperties(prefix = "user.random")@PropertySource(value = { "config/random.properties" })public class RandomConfig {  private String secret;  private int intNumber;  private int lessTen;  private int range;  private long longNumber;  private String uuid;  public String getSecret() {    return secret;  }  public void setSecret(String secret) {    this.secret = secret;  }  public int getIntNumber() {    return intNumber;  }  public void setIntNumber(int intNumber) {    this.intNumber = intNumber;  }  public int getLessTen() {    return lessTen;  }  public void setLessTen(int lessTen) {    this.lessTen = lessTen;  }  public int getRange() {    return range;  }  public void setRange(int range) {    this.range = range;  }  public long getLongNumber() {    return longNumber;  }  public void setLongNumber(long longNumber) {    this.longNumber = longNumber;  }  public String getUuid() {    return uuid;  }  public void setUuid(String uuid) {    this.uuid = uuid;  }}

輸出如下:

secret=83a5c3402ef936a37842dc6de3d1af0f
intNumber=1816149855
lessTen=1
range=37625
longNumber=8449008776720010146
uuid=e5bc2091-1599-45b1-abd7-e3721ac77e6b

具體的生成細(xì)節(jié)可以參考Spring Boot的配置類:

org.springframework.boot.context.config.RandomValuePropertySource

來看下它的源碼,實(shí)現(xiàn)其實(shí)很簡單。

public RandomValuePropertySource(String name) {  super(name, new Random());}private Object getRandomValue(String type) {  if (type.equals("int")) {    return getSource().nextInt();  }  if (type.equals("long")) {    return getSource().nextLong();  }  String range = getRange(type, "int");  if (range != null) {    return getNextIntInRange(range);  }  range = getRange(type, "long");  if (range != null) {    return getNextLongInRange(range);  }  if (type.equals("uuid")) {    return UUID.randomUUID().toString();  }  return getRandomBytes();}

其實(shí)就是使用了 Java 自帶的 java.util.Random java.util.UUID 等工具類,實(shí)現(xiàn)很簡單,這里就不再詳細(xì)解析了,大家可以自己去看下這個(gè)類的實(shí)現(xiàn)。

隨機(jī)數(shù)的生成配置就是這么點(diǎn)了,我知道的是可以隨機(jī)生成應(yīng)用程序端口,其他的還真沒用到。

總結(jié)

以上所述是小編給大家介紹的Spring Boot 配置隨機(jī)數(shù)技巧,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)VeVb武林網(wǎng)網(wǎng)站的支持!


注:相關(guān)教程知識(shí)閱讀請(qǐng)移步到JAVA教程頻道。
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 伊川县| 论坛| 廊坊市| 津市市| 宜春市| 庄河市| 元朗区| 盈江县| 邵阳市| 太原市| 扎赉特旗| 永丰县| 庄河市| 安乡县| 株洲市| 澄城县| 云梦县| 麻江县| 南郑县| 巴南区| 安塞县| 安仁县| 肥乡县| 张家港市| 镇安县| 腾冲县| 宾阳县| 铅山县| 昌平区| 连州市| 陇南市| 郸城县| 兰西县| 九龙城区| 无极县| 饶河县| 夏津县| 嘉定区| 舟曲县| 三门县| 谢通门县|