前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >老板居然让我用Java造假数据

老板居然让我用Java造假数据

作者头像
码农小胖哥
发布2021-01-04 10:20:42
7520
发布2021-01-04 10:20:42
举报

1. 前言

老板说,明天甲方要来看产品,你得搞点数据,而且数据必须是“真”的,演示效果要好看一些,这样甲方才会采购咱们的产品。一般开发接到这种过分要求都不会很乐意去做,这完全是体力劳动了,而且很棘手。今天胖哥教你一招,让你做出逼真的“假”数据。

2. javafaker

这张图大家都很熟悉吧。我们Java也能搞Fake,它就是Javafaker,专门用来制作仿真数据。你只需要在项目中引入:

代码语言:javascript
复制
        <dependency>
            <groupId>com.github.javafaker</groupId>
            <artifactId>javafaker</artifactId>
            <version>1.0.2</version>
        </dependency>

❝忘记说了它主要的使用场景就是为了制造仿真测试数据,而并不是用来造假。

然后胖哥来演示一下它的用法,先定义一个 Java Bean :

代码语言:javascript
复制
/**
 * User info.
 *
 * @author felord.cn
 * @since 10 :50
 */
@Data
public class UserInfo {
  /**
   * 真实姓名
   */
  private String realName;
  /**
   * 手机
   */
  private String cellPhone;
  /**
   * 大学
   */
  private String universityName;
  /**
   * 城市
   */
  private String city;
  /**
   * 地址
   */
  private String street;
}

然后声明一个Faker对象,你可以根据需要进行本地化声明,如果是使用中国的:

代码语言:javascript
复制
        Faker fakerWithCN = new Faker(Locale.CHINA);

你要是想造点美帝的数据就改成这样:

代码语言:javascript
复制
        Faker fakerWithCN = new Faker(Locale.US);

这里我们使用中国来生成模拟 10 条仿真数据:

代码语言:javascript
复制
for (int i = 0; i < 10; i++) {

    UserInfo userInfo = new UserInfo();

    userInfo.setRealName(fakerWithCN.name().fullName());
    userInfo.setCellPhone(fakerWithCN.phoneNumber().cellPhone());
    userInfo.setCity(fakerWithCN.address().city());
    userInfo.setStreet(fakerWithCN.address().streetAddress());
    userInfo.setUniversityName(fakerWithCN.university().name());
    System.out.println("userInfo = " + userInfo);

}

我们来看下结果:

javafaker生成的仿真数据

是不是看上去跟真的一样,但是一定要用到正途,不要用到歪门邪道上。

3. 总结

用了javafaker之后我们不但可以完成老板提出的需求,而且可以减少我们平常使用测试的时候用各种test填充的局面。好了今天的分享就到这里。我是 码农小胖哥,多多关注,获取更多有用的编程干货。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-12-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 码农小胖哥 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. 前言
  • 2. javafaker
  • 3. 总结
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档