JAVA拓展新的数据库,SqlFaker1.0.5更新:轻量级、易拓展的Java数据库智能填充开源库...

为了让各位开发者更方便地使用SqlFaker,本次更新引入了Generator有序值生成器,用来生成有规律的数据。

使用 Generator.of()系列方法生成有序取值范围

Generator类共有以下3种生成有序取值范围方法,如下表:

方法名

取值范围

示例值

Generator.of(可变长数组)

从可变长数组中依次抽取一个元素,可循环

"1001", "1002", "1003"

Generator.ofIntStart(起始值)

在[起始值, 结束值]的范围内取一个整数

500

Generator.ofLongStart(起始值)

从起始值开始,每次取值都+1

1000

另外,Generator.of(可变长数组)方法中还有用于设定可变长数组中每个元素出现次数的方法:

方法名

说明

repeatCount(出现次数)

用于设定可变长数组中每个元素出现次数

使用示例1:

// 给user表的1个字段填充10条数据

// Generator.of()方法中的值会依次出现,抵达最后一个元素后将从第一个元素开始循环

Faker.tableName("user")

.param("deptNo", Generator.of("1001", "1002", "1003"))

.insertCount(10)

.execute();

对应生成的SQL语句如下:

insert into user(deptNo) values('1001')

insert into user(deptNo) values('1002')

insert into user(deptNo) values('1003')

insert into user(deptNo) values('1001')

insert into user(deptNo) values('1002')

insert into user(deptNo) values('1003')

insert into user(deptNo) values('1001')

insert into user(deptNo) values('1002')

insert into user(deptNo) values('1003')

insert into user(deptNo) values('1001')

使用示例2:

// 给user表的2个字段填充10条数据

// Generator.of()方法中的值会依次出现,抵达最后一个元素后将从第一个元素开始循环

// repeatCount()方法可指定Generator.of()参数中的每个值出现的次数

// 如jack会出现3次后,再轮到andy出现3次,wang出现3次,以此类推

Faker.tableName("user")

.param("name", Generator.of("jack", "andy", "wang").repeatCount(3))

.param("deptNo", Generator.of("1001", "1002", "1003"))

.insertCount(10)

.execute();

对应生成的SQL语句如下:

insert into user(name,deptNo) values('jack','1001')

insert into user(name,deptNo) values('jack','1002')

insert into user(name,deptNo) values('jack','1003')

insert into user(name,deptNo) values('andy','1001')

insert into user(name,deptNo) values('andy','1002')

insert into user(name,deptNo) values('andy','1003')

insert into user(name,deptNo) values('wang','1001')

insert into user(name,deptNo) values('wang','1002')

insert into user(name,deptNo) values('wang','1003')

insert into user(name,deptNo) values('jack','1001')

使用示例3:

// 给user表的4个字段填充10条数据

// Generator.ofLongStart()和Generator.ofIntStart()方法,在指定初始值后,每次取值都会+1

Faker.tableName("user")

.param("id", Generator.ofLongStart(10000L))

.param("name", Generator.of("jack", "andy", "wang").repeatCount(3))

.param("deptNo", Generator.of("1001", "1002", "1003"))

.param("serialNum", Generator.ofIntStart(500))

.insertCount(10)

.execute();

对应生成的SQL语句如下:

insert into user(id,name,deptNo,serialNum) values('10000','jack','1001','500')

insert into user(id,name,deptNo,serialNum) values('10001','jack','1002','501')

insert into user(id,name,deptNo,serialNum) values('10002','jack','1003','502')

insert into user(id,name,deptNo,serialNum) values('10003','andy','1001','503')

insert into user(id,name,deptNo,serialNum) values('10004','andy','1002','504')

insert into user(id,name,deptNo,serialNum) values('10005','andy','1003','505')

insert into user(id,name,deptNo,serialNum) values('10006','wang','1001','506')

insert into user(id,name,deptNo,serialNum) values('10007','wang','1002','507')

insert into user(id,name,deptNo,serialNum) values('10008','wang','1003','508')

insert into user(id,name,deptNo,serialNum) values('10009','jack','1001','509')

另外,本次更新也引入了MySQL、SQLServer、Oracle、Sqlite、H2数据库的Faker表创建器,可快速将数据库中的表生成Faker结构的Java文件。

Maven依赖:

com.github.lkmc2

sql-faker

1.0.5

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值