# data-generate **Repository Path**: rookiesJ/data-generate ## Basic Information - **Project Name**: data-generate - **Description**: 假数据生成工具,支持多种生成模式和自定义模式,数据插入数据库,方便【开发】、【测试】测试接口 - **Primary Language**: Java - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 2 - **Created**: 2021-12-16 - **Last Updated**: 2022-09-23 ## Categories & Tags **Categories**: Uncategorized **Tags**: Java, 开发工具, 测试工具 ## README ### 教程 ### 快速开始 1、修改 application-dev.yml 中的数据库连接配置 2、修改 启动类 GenerateScan 注解扫描路径 3、进入可视化界面 #### GenerateScan 作用:标记扫描类配置的路径,可以扫描多个路径。标记在启动类中。 #### GenerateTable 配置实体类标记注解,标记了该注解会将实体类中的属性配置加载到系统中。 #### 字段值范围配置注解 **Range** 如果字段是数值型则设置的是数值的大小;如果是浮点型则设置的是浮点型的范围和小数点位数;如果字段是字符型则设置的是字符串的长度。 **TimeRange** 数据库字段是 DATE 类型则 year - day 注解值有效,最终转换成【天】范围,最大范围是 181 年。 如果是 TIME 类型,hour - second 有效,最终转换成【秒】,最大值是 1 天。 如果是 YEAR 类型,则 year 注解值有效,最大值是 30 年。 如果是 DATETIME 类型,则 year - min 注解值有效,最大值是 4 年。 如果是 TIMESTAMP 类型,则全部注解值有效,最大值是 4 年。 **StringTemplate** 设置字符串模板,模板可以使用占位符,具体参考 String.format **ConstCollection** 枚举类型,常用于生成固定的枚举类型。 **CommonType** 设置生成数据的类型,可以是 phone、email、uuid、身份证号、图片地址、中文姓名、ip地址、时间ID,ID、文件地址 正则表达式。暂时只支持简单的正则表达式,可用参数为:[、]、|、{}、,。 比如: [0-9] 代表随机生成 1 个 0-9 的数字。 [0-9]{6} 代表随机生成 6 个 0-9 的数字。 [0-9]{3,6} 代表随机生成最少 3 个 最多 6个 0-9 的数字 [0-9|a-z|_] 代表随机生成 1 个 0-9 之间的数字或者 a-z 之间的字母 或者生成 1 个下划线。 **Null** 设置该字段不生成数据。 #### 自定义规则注解 需要继承 AbstractAnnotationGenerate 类,然后标记 `@Component` 注解,具体可参考 CommonTypeGenerate 类。 #### 关联表生成 请在 GenerateTable 注解中配置 meantimeTable 相关的关联表,生成模式为 1 对 1 生成。 可视化界面地址:http://localhost:8095