java - 将 javabean 初始化为随机值的方法

标签 java random javabeans

我一直在寻找一些实用程序类/代码,它们会接受一个 java bean 并将其所有值初始化为随机值。它可以通过反射来完成,因为一些库已经创建了 toString() 或 equals() 方法。例如,在开发 UI 以获取一些数据时很有用。

其他可能的好东西:

  1. 也递归初始化非原始或简单(字符串、日期)成员
  2. 初始化一组bean
  3. 也许可以提供一些方法来限制生成的值,例如对于数字我们可以给出范围,对于字符串正则表达式或通配符...

有人知道这样的事情吗? 谢谢

编辑:解决...让 Apocalisp 的示例正常工作,这绝对是我一直在寻找的东西。恕我直言,它有一些缺点:

  • 图书馆的范围比使用范围大得多,但这对我来说不是问题
  • 理解如何为您的对象构建 Arbitrary 是相当复杂的,除非您投入一些时间来研究整个事情。这是一个缺点。
  • 我想它可能更简洁,但这也很好。

谢谢!

最佳答案

看看 Easy Random:https://github.com/j-easy/easy-random .

它允许您使用随机数据填充 Java 对象图。

免责声明:我是该库的作者

关于java - 将 javabean 初始化为随机值的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/838616/

相关文章:

java - 比较字符串与一般形式java

java - 使用 rpm-maven-plugin 的多模块 Web 应用程序示例?

matlab - 如何获得具有特定数量级的随机数数组

c++ - 当 std::uint_fast32_t 在 GCC 中为 4 字节时,std::mt19937 失败

c++ - 来自函数的随机整数总是返回相同的数字 - 为什么?

java - java中打印bean对象

java - Spring MVC 是否缓存在 Web 应用程序启动时未加载的 bean 文件?

java - 插入行 SPRING + Hibernate 时的 MySql 编码问题

java - 如何将 ASCII 码 (0-255) 转换为其对应的字符?

concurrency - Java中的不可变bean