Spring Boot支持在系统加载的时候配置随机数。

添加config/random.properties文件,添加以下内容:

  1. #随机32位MD5字符串
  2. user.random.secret=${random.value}
  3. #随机int数字
  4. user.random.intNumber=${random.int}
  5. #随机long数字
  6. user.random.longNumber=${random.long}
  7. #随便uuid
  8. user.random.uuid=${random.uuid}
  9. #随机10以内的数字
  10. user.random.lessTen=${random.int(10)}
  11. #随机1024~65536之内的数字
  12. user.random.range=${random.int[1024,65536]}

添加绑定类:

  1. import org.springframework.boot.context.properties.ConfigurationProperties;
  2. import org.springframework.context.annotation.PropertySource;
  3. import org.springframework.stereotype.Component;
  4. @Component
  5. @ConfigurationProperties(prefix = "user.random")
  6. @PropertySource(value = { "config/random.properties" })
  7. public class RandomConfig {
  8. private String secret;
  9. private int intNumber;
  10. private int lessTen;
  11. private int range;
  12. private long longNumber;
  13. private String uuid;
  14. public String getSecret() {
  15. return secret;
  16. }
  17. public void setSecret(String secret) {
  18. this.secret = secret;
  19. }
  20. public int getIntNumber() {
  21. return intNumber;
  22. }
  23. public void setIntNumber(int intNumber) {
  24. this.intNumber = intNumber;
  25. }
  26. public int getLessTen() {
  27. return lessTen;
  28. }
  29. public void setLessTen(int lessTen) {
  30. this.lessTen = lessTen;
  31. }
  32. public int getRange() {
  33. return range;
  34. }
  35. public void setRange(int range) {
  36. this.range = range;
  37. }
  38. public long getLongNumber() {
  39. return longNumber;
  40. }
  41. public void setLongNumber(long longNumber) {
  42. this.longNumber = longNumber;
  43. }
  44. public String getUuid() {
  45. return uuid;
  46. }
  47. public void setUuid(String uuid) {
  48. this.uuid = uuid;
  49. }
  50. }

输出如下:

  1. secret=83a5c3402ef936a37842dc6de3d1af0f
  2. intNumber=1816149855
  3. lessTen=1
  4. range=37625
  5. longNumber=8449008776720010146
  6. uuid=e5bc2091-1599-45b1-abd7-e3721ac77e6b

具体的生成细节可以参考Spring Boot的配置类:

  1. org.springframework.boot.context.config.RandomValuePropertySource

推荐阅读

干货:免费领取2TB架构师四阶段视频教程

面经:史上最全Java多线程面试题及答案

工具:推荐一款在线创作流程图、思维导图软件

分享Java干货,高并发编程,热门技术教程,微服务及分布式技术,架构设计,区块链技术,人工智能,大数据,Java面试题,以及前沿热门资讯等。

Spring Boot配置随机数的更多相关文章

  1. Spring Boot 配置随机数技巧

    Spring Boot支持在系统加载的时候配置随机数. 添加config/random.properties文件,添加以下内容: #随机32位MD5字符串 user.random.secret=${r ...

  2. Spring Boot -- 配置切换指南

    一般在一个项目中,总是会有好多个环境.比如: 开发环境 -> 测试环境 -> 预发布环境 -> 生产环境 每个环境上的配置文件总是不一样的,甚至开发环境中每个开发者的环境可能也会有一 ...

  3. Spring Boot 配置优先级顺序

    一般在一个项目中,总是会有好多个环境.比如: 开发环境 -> 测试环境 -> 预发布环境 -> 生产环境 每个环境上的配置文件总是不一样的,甚至开发环境中每个开发者的环境可能也会有一 ...

  4. spring boot 配置注入

    spring boot配置注入有变量方式和类方式(参见:<spring boot 自定义配置属性的各种方式>),变量中又要注意静态变量的注入(参见:spring boot 给静态变量注入值 ...

  5. Spring boot配置多个Redis数据源操作实例

    原文:https://www.jianshu.com/p/c79b65b253fa Spring boot配置多个Redis数据源操作实例 在SpringBoot是项目中整合了两个Redis的操作实例 ...

  6. spring boot配置springMVC拦截器

    spring boot通过配置springMVC拦截器 配置拦截器比较简单, spring boot配置拦截器, 重写preHandle方法. 1.配置拦截器: 2重写方法 这样就实现了拦截器. 其中 ...

  7. spring boot配置mybatis和事务管理

    spring boot配置mybatis和事务管理 一.spring boot与mybatis的配置 1.首先,spring boot 配置mybatis需要的全部依赖如下: <!-- Spri ...

  8. [转] Spring Boot配置多个DataSource

    [From]  https://www.liaoxuefeng.com/article/001484212576147b1f07dc0ab9147a1a97662a0bd270c20000 Sprin ...

  9. Spring boot 配置异步处理执行器

    示例如下: 1. 新建Maven 项目 async-executor 2.pom.xml <project xmlns="http://maven.apache.org/POM/4.0 ...

随机推荐

  1. UVA 212 Use of Hospital Facilities

    题目链接:https://vjudge.net/problem/UVA-212 题意摘自<算法禁赛入门经典> 题目大意 医院里有 N(N ≤ 10)个手术室和 M(M ≤ 30)个恢复室. ...

  2. 力扣算法——137SingleNumberII【M】

    Given a non-empty array of integers, every element appears three times except for one, which appears ...

  3. Spring 相关目录

    Spring 相关目录 学习笔记 Spring 学习笔记 IoC 基础 Spring 学习笔记 Resource 资源 Spring 学习笔记 数据绑定,校验,BeanWrapper 与属性编辑器 源 ...

  4. Java DOM解析器 - 修改XML文档

    这是我们需要修改的输入XML文件: 1 2 3 4 5 6 7 8 9 10 11 12 <?xml version="1.0" encoding="UTF-8&q ...

  5. dubbo的一些特性理解一下

    还有 启动检查.负载均衡.多协议支持 等 待总结

  6. docker--删除container和image

    docker的命令分两类Management Commands和Commands Management Commands是对docker里的对象进行管理的 [root@localhost docker ...

  7. 纯Delphi 原生写的 上传到七牛的功能

    上传文件到七牛, 支持分片分段上传, 适用于Delphi XE, 10等新版本 分两个函数: uploadToQiniu 和 directUploadToQiniu uploadToQiniu 这个函 ...

  8. shell脚本命令行参数里的空白符

    看一个小脚本 #!/bin/bash #demonstarting the shift command count= while [ -n "$1" ] ; do echo &qu ...

  9. Android开发 Butterknife使用方法总结

    前言: ButterKnife是一个专注于Android系统的View注入框架,以前总是要写很多findViewById来找到View对象,有了ButterKnife可以很轻松的省去这些步骤.是大神J ...

  10. 【记录】API Gateway作用? 与过滤器的区别?Nginx与Zuul区别?

    网关(gateway)的作用: 网关可以拦截客户端所有请求,对该请求进行权限控制.负载均衡.日志管理.接口调用监控等 过滤器与网关的区别是什么? 过滤器是拦截单个tomcat服务器请求. 网关是拦截整 ...