老板居然让我用Java造假数据
1. 前言
老板说,明天甲方要来看产品,你得搞点数据,而且数据必须是“真”的,演示效果要好看一些,这样甲方才会采购咱们的产品。一般开发接到这种过分要求都不会很乐意去做,这完全是体力劳动了,而且很棘手。今天胖哥教你一招,让你做出逼真的“假”数据。
2. javafaker
这张图大家都很熟悉吧。我们Java也能搞Fake,它就是Javafaker,专门用来制作仿真数据。你只需要在项目中引入:
<dependency><groupId>com.github.javafaker</groupId><artifactId>javafaker</artifactId><version>1.0.2</version></dependency>
忘记说了它主要的使用场景就是为了制造仿真测试数据,而并不是用来造假。
然后胖哥来演示一下它的用法,先定义一个 Java Bean :
/*** 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
对象,你可以根据需要进行本地化声明,如果是使用中国的:
Faker fakerWithCN = new Faker(Locale.CHINA);
你要是想造点美帝的数据就改成这样:
Faker fakerWithCN = new Faker(Locale.US);
这里我们使用中国来生成模拟 10 条仿真数据:
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
填充的局面。好了今天的分享就到这里。我是 码农小胖哥,多多关注,获取更多有用的编程干货。
卧槽,QQ号也能改了!!!赶紧来改!宇宙唯一ID赶紧来抢注!
2020-12-28
美滋滋的开源数据库模型建模工具!
2020-12-28
这是我见过最简单粗暴的辞职书了
2020-12-28
想不想别人叫你爸爸?刚更新的微信红包,这玩法也太骚了吧
2020-12-27
如何使用 Arthas 定位 Spring Boot 接口超时
2020-12-27
刚弄好的中台!又要开始拆了?难道是为了凑工作量?
2020-12-26
推荐关注本文作者:码农小胖哥
分享高质量编程知识,探讨IT人生
技术干货,实战技巧,面试技巧,前沿资讯一个都不能少
﹀
﹀
﹀
深度交流
技术 + 社会
职场 + 创业
老板居然让我用Java造假数据相关推荐
- java 代码造假_老板居然让我在Java项目中“造假”
1. 前言 老板说,明天甲方要来看产品,你得造点数据,而且数据必须是"真"的,演示效果要好看一些,这样他才会买我们的产品,我好明年给你换个嫂子.一般开发接到这种过分要求都不会很乐意 ...
- Java新手造假_老板居然让我在Java项目中“造假”
1. 前言 老板说,明天甲方要来看产品,你得造点数据,而且数据必须是"真"的,演示效果要好看一些,这样他才会买我们的产品,我好明年给你换个嫂子.一般开发接到这种过分要求都不会很乐意 ...
- java如何造假数据_别再手工造假数据了,faker了解一下
项目开发初期,为了测试方便,我们总要造不少假数据到系统中,尽量模拟真实环境. 比如要创建一批用户,创建一段文本,或者是电话号码,抑或着是街道地址或者IP地址等等. 以前要么就是键盘一顿乱敲,随便造个什 ...
- 2019年美团,滴滴,蘑菇街Java大数据面经分享!
作者:不清不慎!目前从事Java大数据开发相关的工作,对大数据spark等分布式计算领域有着浓厚的兴趣,欢迎一起交流,一起进步.本文为作者投稿,有兴趣投稿的同学,请在后台回复投稿! 大概在三月份开始面 ...
- 天真,居然还有人认为java的参数传递方式是引用传递
代码写的越急,程序跑得越慢.-- Roy Carlson 时间过得真快,2020已经过去了一半,但是疫情好像还没有真正的消灭,人们出行还是得带着口罩,天气越来越热,受罪啊. 言归正传,都2020年了, ...
- .pgr照片文件解析,C++与Java存储数据差别大小端模式
一..pgr是什么? .pgr文件是二进制的图像文件,可以用普通的文本文件打开,或者查看十六进制的文本信息: 读取需要了解~~~非常重要 !!! 基本数据类型的大小端存储模式 表头Header 详细信 ...
- 零基础学Java大数据难不难
java大数据如今在企业中用到的次数是非常多的,很多人都比较看好java技术,那么零基础学Java大数据难不难?想要学习java技术说难不难,说简单也不是很简单,来看看下面的详细介绍就知道了. 零基础 ...
- java 静态数据_Java 静态数据初始化的示例代码
无论创建多少个对象,静态数据都只占用一份存储区域.static关键字不能应用于局部变量,因此它只能作用于域.如果一个域是静态的基本类型域,且也没有对它进行初始化,那么它就会获得基本类型的标准初始值:如 ...
- opengl中的Floatbuffer和IntBuffer与java中数据的存储方式不同的解决方法,编辑一个自己的BufferUtil工具类
opengl中的Floatbuffer和IntBuffer与java中数据的存储方式不同的解决方法,编辑一个自己的BufferUtil工具类 参考文章: (1)opengl中的Floatbuffer和 ...
最新文章
- 2004-10-26+ 用户输入的安全问题
- deepin linux 大小,关于安装Deepin 20系统选择全盘安装后硬盘容量比实际的小
- ios 自定义UIView绘制时文字上下颠倒问题解决
- SAP- MM 委外加工(Subconctracting)流程
- Linux环境下Redmine的安装(一)
- invalid table name什么意思_新手入门前端要学习什么?总结一些知识点(建议收藏)...
- Java se之动态代理
- 如何成为一位杰出的程序员
- 字符串指针与一维指针数组的区别
- winform调用SSH2访问linux,使用Cygwin通过ssh命令行来访问Windows 7
- 【雷达通信】基于matlab联邦滤波算法惯性+GPS+地磁组合导航仿真【含Matlab源码 1276期】
- UGUI源码之绘制初探
- c语言指针的作用 举例,c语言指针详解(c语言指针用法举例)
- Instant Run(App加壳)
- 如何使用STM32F1/F4驱动CS5463
- ipadpro编写java代码_iPad Pro变生产力工具,你还缺个轻量级浏览器端代码编辑器...
- html饼图显示百分比,Excel饼图中既显示百分比又显示数量的方法
- 【B2B】阿里巴巴汪海:1688成年礼—从中小企业数字化看B2B发展趋势
- 太空大战2d游戏制作
- HTML5雨滴特效,晶莹剔透