java实现的开源mocker造数神器,10分钟可完成千万级别数据的造数-入门篇

如果你还在为数据库表造数烦恼?如果你还在造数上花费一天、一周、甚至更多的时间……也许Mocker(模客)能帮你排忧解难。

造数是一件令人头疼、繁琐而又无趣的事情,但有些时候它又是开发过程中不可避免的一个阶段。

我们常用的造数方法

少量数据也许可以通过人工手动一行一行造稍微多一点要做个excel工具进行数据模拟并导入数据量再大一点可能就得写脚本(如python等)来造数以上这些方式一般来说都需要一定的时间成本投入,为了杜绝这种不必要的开发时间成本浪费,Mocker因此而生。

Mocker本着你写逻辑我造数原则服务于你的造数需求,百万级别数据量造数不再需要一天、一周甚至更多的时间,Mocker只需要10分钟甚至更少。

待模拟数据表结构登录后复制 CREATE TABLE `mk_user` ( `id` bigint(18) NOT NULL AUTO_INCREMENT COMMENT '主键自增长', `user_name` varchar(55) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT '账户名称', `password` varchar(55) DEFAULT NULL COMMENT '账户密码', PRIMARY KEY (`id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8;1.2.3.4.5.6.

引入maven依赖登录后复制 io.gitee.jaemon mocker 1.1.01.2.3.4.5.

Mocker配置文件登录后复制 # 数据库配置driver=com.mysql.cj.jdbc.Driverurl=jdbc:mysql://localhost:3306/mockdb?useUnicode=true&characterEncoding=utf-8&useSSL=falseusername=rootpassword=root1.2.3.4.5.Mocker配置文件路径: resources/mocker.properties

执行字段值生成处理类生成程序登录后复制 public class MockerApp { public static void main(String[] args) { // 生成表字段值生成处理类 DataMockStarter.generate("/home/jaemon/mocker"); }}1.2.3.4.5.6.7.运行程序,在/home/jaemon/mocker路径下会生成 MockdbColumnHandlerEnum枚举类文件,文件内容如下

登录后复制 public enum MockdbColumnHandlerEnum implements TableColumnsHandler { // mk_user-账户名称-varchar(55) USER_NAME { @Override public String generate(String tableName, Map values) { return null; } }, // mk_user-账户密码-varchar(55) PASSWORD { @Override public String generate(String tableName, Map values) { return null; } }; MockdbColumnHandlerEnum() {}}1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.编写MockdbColumnHandlerEnum枚举类字段值生成逻辑

登录后复制 public enum MockdbColumnHandlerEnum implements TableColumnsHandler { // mk_user-账户名称-varchar(55) USER_NAME { @Override public String generate(String tableName, Map values) { return RandomUtils.randomCNName(); } }, // mk_user-账户密码-varchar(55) PASSWORD { @Override public String generate(String tableName, Map values) { return RandomUtils.generateCharNums(8); } }; MockdbColumnHandlerEnum() {}}1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.

执行数据模拟程序登录后复制 public class MockerApp { public static void main(String[] args) { // 模拟数据库表数据生成 DataMockStarter.mock(MockdbColumnHandlerEnum.class); }}1.2.3.4.5.6.7.

源码地址​ ​Mocker Gitee​​

上一篇: 为什么温网只能穿一身白?
下一篇: 东国水光不同版本怎么选?使用原理+适合人群详解

相关推荐

这5家,快到截止日期了
华为p30手机换屏幕多少钱 , 华为P30换屏需要多少钱?
5 个会损坏或毁坏主板的常见错误
攻城战系统2.1
结的多音字组词
悬浮滑板英雄攻略大全 地铁跑酷Hoverboard Heroes入门玩法介绍