Skip to content

SQL导出

xinwu-yang edited this page Feb 28, 2023 · 1 revision

sql-export

使用了mybatis-plus的annotation接口动态生成SQL语句,目前只支持MySQL(5.7+)

Quick Start:
  1. 在Maven的pom.xml配置公司的私服,并引入sql-export依赖
<repositories>
    <!-- 公司私服-->
    <repository>
        <id>tievd</id>
        <url>http://125.71.201.6:8081/content/groups/public</url>
    </repository>
</repositories>

<dependency>
    <groupId>com.tievd.cube.commons</groupId>
    <artifactId>sql-export</artifactId>
    <version>1.1.2</version>
</dependency>
  1. SQL语句生成
@Data
@TableName("sys_area")
public class SysArea implements Serializable {
    private static final long serialVersionUID = 1L;
    @TableId(type = IdType.ASSIGN_ID)
    private Long id;
    private Long parentId;
    private String name;
    private String gbCode;
    private String postCode;
    private Integer level;
    private String path;
    private Boolean hasChildren;
    @TableLogic
    private Integer delFlag;
    private Date createTime;
}

SysArea sysArea = new SysArea();
sysArea.setId(1L);
sysArea.setName("成都市");
sysArea.setParentId(0L);
sysArea.setPostCode("6100041");
sysArea.setGbCode("GB2312");
sysArea.setLevel(1);
sysArea.setPath("A01");
sysArea.setHasChildren(false);
sysArea.setDelFlag(0);
sysArea.setCreateTime(new Date());

SQLExporter exporter = new MySQLExporter();
// 生成insert语句
exporter.insert(sysArea);
// 批量生成insert语句
exporter.inserts(sysArea);
// 生成delete语句
exporter.delete(sysArea);
// 批量生成delete语句
exporter.deletes(sysArea);
// 生成忽略外键语句
exporter.foreignKeyChecks(true);
// 生成注释
exporter.comment("Hello World!");
  1. 注解说明
// 生成sql的表名,默认是实体名的下划线模式,注解中的配置优先
@TableName("sys-area")
// 定义主键,如果主键是自增则生成的sql语句中不会有主键字段
@TableId(type = IdType.AUTO)
// 定义字段的名称,默认是属性的下划线模式,注解中的配置优先,支持忽略字段
@TableField("del_flag")
// 忽略字段,则不会生成这个字段到SQL中
@TableField(exist = false)
MySQL
  1. 时间类型目前只支持java.util.Date

更新日志

CHANGELOG

开发环境

开发环境安装

Git开发和迭代规范

Git开发和迭代规范

快速开始

3.0.x

2.6.x

代码生成器

如何使用代码生成器

自定义代码生成器模板

开发技巧

登录和凭证配置介绍

如何在代码中获取当前登录对象

字典翻译

菜单路由配置

数据日志如何使用

查询过滤器用法

系统操作日志怎么插入

平台消息推送接口

限制API重复提交

部门父子编码使用方法

系统文件上传

系统编码规则如何使用

系统校验规则如何使用

第三方平台如何调用魔方API

如何切换回Druid数据源

自定义接口拦截器

自定义接口参数Formatter

使用SpringDoc编写API文档

系统权限用法

接口请求权限

页面按钮权限

表格列字段权限

二级部门权限管理

数据权限

表单权限

业务模块

Quartz任务调度

消息中心

第三方登录

阿里云OSS(MinIO)上传管理模块

魔方Plugins

工作流引擎

SQL导出

字符串脱敏

Excel的快速导入导出

文件的上传和下载

加密插件

接入magic-api

新版代码生成器

通用地图服务

高级用法

部门结构变化权限如何控制

如何优雅的拓展用户部门字段

多租户

SSO单点登录

Prometheus

数据库专栏

MySQL5.7+

MySQL分区表

达梦数据库(DM8)

魔方集成达梦数据库

从MySQL迁移到达梦数据库

达梦8与MySQL的主要区别

MyCat分库分表

原则

垂直分片Demo

水平分片Demo

微服务

如何切换微服务

微服务组件

预研Demo示例

预研Demo示例

Clone this wiki locally