java springboot通过application配置文件生成随机值并控制范围

我们找到 项目的 application 配置文件 这里我们还是习惯用 yml格式的

我们在配置文件中 写出
${random.} 的时候 他就会将所有可配置的随机类型都提示出来了 有 整数 长整星 字符串 uuid
在这里插入图片描述
这里 我们来个模板

testcase:book:id: ${random.int}name: ${random.value}date: ${random.long}uuid: ${random.uuid}

id 随机生成一个 整数 name 随机生成一个字符串 date 随机生成一个long类型数据 uuid 随机生成一个uuid

然后 我们创建一个类 我这里就叫 user了
参考代码如下

package com.example.webdom.domain;import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;@ConfigurationProperties(prefix = "testcase.book")
@Component
public class user {private int id;private String name;private long date;private String uuid;public void setId(int id) {this.id = id;}public void setName(String name) {this.name = name;}public void setDate(long date) {this.date = date;}public void setUuid(String uuid) {this.uuid = uuid;}public int getId() {return id;}public String getName() {return name;}public long getDate() {return date;}public String getUuid() {return uuid;}@Overridepublic String toString() {return "user{" +"id=" + id +", name='" + name + '\'' +", date=" + date +", uuid='" + uuid + '\'' +'}';}
}

这个类 我们先声明 ConfigurationProperties 这个属性之前我们也讲过 将application中的值 匹配到我们的属性类中 我们这里指定 拿 testcase 下的 book
testcase 和 book这里 叫什么 名字 什么结构无所谓 因为 反正你只要写在application中的属性 ConfigurationProperties 都可以去掉 主要还是 ${random.类型} 生成随机值
然后 这里 id 数字类型 name 字符串类型 uuid实际拿到类型也是字符串 然后 date 狼类型

然后 我们写了它的get set方法
又重写了 它的 toString方法 方便打印出来看

然后我们在测试类中 条件装配一下这个user类 然后输出控制台看一下
在这里插入图片描述
然后 我们右键运行 测试方法
在这里插入图片描述
这边 我们可以多试几次 每个值都是不同的

但这种 其实有点鸡肋 很多人都会想 这有什么用呀?

我们还可以控制生成数据的范围
这边我们这样改

testcase:book:id: ${random.int(5,10)}name: ${random.value}date: ${random.long}uuid: ${random.uuid}

现在 id的随机值 会在 5-10中生成
我们再次运行
在这里插入图片描述
完全没有问题

最后提一下 value生成的随机字符串 是MD5加密的 32位字符串

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/236177.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数据库的多表查询(MYSQL)表表联立

根据以上三张表格,对三张表格进行不同的联立,查询并显示符合条件的内容。 1. 查出至少有一个员工的部门。显示部门编号、部门名称、部门位置、部门人数。 mysql> SELECT d.deptno AS 部门编号, d.dname as 部门名称, d.loc as 部门位置, COUNT(e.emp…

98.套接字-Socket网络编程1(基础概念)

目录 1.局域网和广域网 2.IP 互联网协议(Internet Protocol) IP的作用 3.查看IP地址 Windows上查看IP ​编辑 Linux上查看IP 4.端口 主要类型: 用途: 示例: 端口的表示: 5.OSI/ISO 网络分层模型 1.局域网和广域网 …

手持机|三防智能手机_4寸/5寸/6寸安卓系统三防手机PDA手持终端方案

随着科技的不断发展,三防手持机作为一种多功能设备,正逐渐在各行业得到广泛应用。这款手持机采用高性能处理器,支持高精度北斗定位和工业本安防爆功能,并具备IP67级防水防尘性能和1.5米防跌落能力。因此,它在仓储管理、…

Adobe系列的冷门成员~Firework

本贴博主给大家带来的是一款上了年纪、且比较冷门的Adobe全家桶成员——Firework,对于网页设计的从业者来说还是有一定的应用价值的,快来一起看看吧! 一款网页作图软件,软件可以加速 Web 设计与开发, 是一款创建与优化…

QT QGraphicsItem 图元覆盖导致鼠标点击事件不能传递到被覆盖图元

一、概述 在日常开发中,遇到这样一个问题,线图元和引脚图元重叠,导致点击引脚图元,没有进入引脚图元的鼠标点击事件中。 二、产生原因 如果您的 QGraphicsItem 上有一个图元覆盖了它,可能会导致鼠标事件无法正常触发…

L1-005:考试座位号

题目描述 每个 PAT 考生在参加考试时都会被分配两个座位号,一个是试机座位,一个是考试座位。正常情况下,考生在入场时先得到试机座位号码,入座进入试机状态后,系统会显示该考生的考试座位号码,考试时考生需…

百度地图JavaScript API GL获取经纬度,标记,添加文本标注,点击事件,封装

百度地图JavaScript API GL常用方法封装 引入百度js库 <script type"text/javascript" src"https://api.map.baidu.com/api?v1.0&typewebgl&ak自己的百度应用ak"></script>封装方法 <template><div class"map"&…

Flink(八)【窗口】

前言 终于忙完了四门专业课的期末&#xff0c;确实挺累啊。今天开始继续学习 Flink &#xff0c;接着上次的内容。 今日摘录&#xff1a; 他觉得一个人奋斗更轻松自在。跟没有干劲的人在一起厮混&#xff0c;只会徒增压力。 -《解忧杂货店》 1、窗口 之前我们已经了解了…

Redis7--基础篇4(Redis事务)

Redis事务是什么 可以一次执行多个命令&#xff0c;本质是一组命令的集合&#xff0c;一个事务中的所有命令都会序列化&#xff0c;按顺序串行&#xff0c;而不会被其他命令插入。 其作用就是在一个队列中&#xff0c;一次性、顺序、排他的执行一系列命令。 Redis事务 VS 数据…

TZOJ 1387 人见人爱A+B

答案&#xff1a; #include <stdio.h> void time(int ah, int am, int as, int bh, int bm, int bs, int* sum_h, int* sum_m, int* sum_s) //不需要返回值所以定义void函数&#xff0c;前面6个为输入&#xff0c;然后用指针存给后面三个 {*sum_s (as bs) % 60; …

无人机助力电力设备螺母缺销智能检测识别,python基于YOLOv7开发构建电力设备螺母缺销高分辨率图像小目标检测系统

传统作业场景下电力设备的运维和维护都是人工来完成的&#xff0c;随着现代技术科技手段的不断发展&#xff0c;基于无人机航拍飞行的自动智能化电力设备问题检测成为了一种可行的手段&#xff0c;本文的核心内容就是基于YOLOv7来开发构建电力设备螺母缺销检测识别系统&#xf…

Linux 系统渗透提权-Server2204

B-3:Linux 系统渗透提权 任务环境说明: 服务器场景:Server2204(关闭链接) 用户名:hacker 密码:123456 1.使用渗透机对服务器信息收集,并将服务器中 SSH 服务端口号作为 flag 提 交; Flag:2283/tcp