sqlfather笔记

这里简单记录写学习鱼皮sqlfather项目的笔记,以供以后学习。

运行

将前后端项目clone到本地后,修改对应配置文件运行项目。

后端

1.配置好mysql后运行这个sql文件建立对应的表。
在这里插入图片描述
2.修改数据库密码
在这里插入图片描述
3.修改完后运行启动类即可
在这里插入图片描述
4. 启动结果
在这里插入图片描述
5.查看API接口浏览器输入http://localhost:8102/api/doc.html在这里插入图片描述

前端

前段代码不需要做修改,将代码下载到本地后,在终端窗口输入命令

// 安装依赖
yarn install // 如果提示没有yarn,先npm下载一下
// 运行程序
npm run dev 

在这里插入图片描述
运行效果
在这里插入图片描述

代码

代码结构

在这里插入图片描述
代码结构如上图所示,其中core文件夹主要用于成sql数据。

  • builder:生成sql语句,JSON数据,java代码,前段代码
    在这里插入图片描述
  • generator:生成模拟数据(固定值,随机值,自增值,根据正则表达式生成等)
  • model:实体
  • schema:构造表时的统一规范
  • utils: 随机数生成 工具,可以生成姓名、邮箱、城市、IP、URL、日期、时间戳、手机号等数据。

代码解析

生成表

这里以生成student表为例
在这里插入图片描述

  1. 前段发送请求 http://localhost:8102/api/sql/generate/schema,映射到后端/sql/generate/schema方法
    在这里插入图片描述
    这里为了方便生成,将前段定义的数据统一转化为了TableShema类型,包括库名、表名、字段名等信息。
package com.yupi.sqlfather.core.schema;

import java.util.List;
import lombok.Data;

/**
 * 表概要
 *
 * @author https://github.com/liyupi
 */
@Data
public class TableSchema {
   
   

    /**
     * 库名
     */
    private String dbName;

    /**
     * 表名
     */
    private String tableName;

    /**
     * 表注释
     */
    private String tableComment;

    /**
     * 模拟数据条数
     */
    private Integer mockNum;

    /**
     * 列信息列表
     */
    private List<Field> fieldList;

    /**
     * 列信息
     */
    @Data
    public static class Field {
   
   
        /**
         * 字段名
         */
        private String fieldName;

        /**
         * 字段类型
         */
        private String fieldType;

        /**
         * 默认值
         */
        private String defaultValue;

        /**
         * 是否非空
         */
        private boolean notNull;

        /**
         * 注释(字段中文名)
         */
        private String comment;

        /**
         * 是否为主键
         */
        private boolean primaryKey;

        /**
         * 是否自增
         */
        private boolean autoIncrement;

        /**
         * 模拟类型(随机、图片、规则、词库)
         */
        private String mockType;

        /**
         * 模拟参数
         */
        private String mockParams;

        /**
         * 附加条件
         */
        private String onUpdate;
    }

}

  1. 然后会进入GeneratorFacade类中的gene
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值