RandomUtils.java
1.86 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
package cn.iocoder.dashboard.util;
import cn.hutool.core.util.*;
import cn.iocoder.dashboard.modules.system.dal.dataobject.user.SysUserDO;
import java.lang.reflect.Field;
/**
* 随机工具类
*
* @author 芋道源码
*/
public class RandomUtils {
private static final int RANDOM_STRING_LENGTH = 10;
public static String randomString() {
return RandomUtil.randomString(RANDOM_STRING_LENGTH);
}
public static Long randomLong() {
return RandomUtil.randomLong(0, Long.MAX_VALUE);
}
public static Integer randomInteger() {
return RandomUtil.randomInt(0, Integer.MAX_VALUE);
}
public static Short randomShort() {
return (short) RandomUtil.randomInt(0, Short.MAX_VALUE);
}
public static SysUserDO randomUserDO() {
SysUserDO user = randomObject(SysUserDO.class);
return user;
}
private static <T> T randomObject(Class<T> clazz) {
// 创建对象
T object = ReflectUtil.newInstance(clazz);
// 遍历属性,设置随机值
for (Field field : ReflectUtil.getFields(clazz)) {
// 数字类型
if (field.getType() == Long.class) {
ReflectUtil.setFieldValue(object, field, randomLong());
continue;
}
if (field.getType() == Integer.class) {
ReflectUtil.setFieldValue(object, field, randomInteger());
continue;
}
if (field.getType() == Short.class) {
ReflectUtil.setFieldValue(object, field, randomShort());
continue;
}
// 字符串类型
if (field.getType() == String.class) {
ReflectUtil.setFieldValue(object, field, randomString());
continue;
}
// System.out.println();
}
return object;
}
}