xbatis-ddl-auto:轻量自动建表工具,功能丰富安全,多模式助力开发!

发布时间:2026/9/27 11:43:48
xbatis-ddl-auto:轻量自动建表工具,功能丰富安全,多模式助力开发! 功能亮点根据xbatis实体生成 CREATE TABLE SQL表不存在时自动建表表存在时可在 UPDATE 模式下自动追加新增字段支持只生成SQL不执行数据库操作通过JDBC DatabaseMetaData 判断表、字段和索引是否存在支持常见Java类型到数据库列类型映射支持 ColumnDefinition 配置字段长度、精度、小数位、默认值、唯一约束、非空和字段注释支持类级 Index 创建普通索引和唯一索引。安全边界把控UPDATE 模式只会自动新增字段和缺失索引不会自动执行删除数据库已有字段、修改字段类型等操作建议通过人工审核SQL或专业迁移工具处理。Maven坐标信息本工具Maven坐标为 cn.xbatisxbatis-ddl-auto1.0.1运行依赖xbatis core cn.xbatisxbatis-core1.10.6默认测试使用JUnit 5和H2需要真实数据库的集成测试通过Maven profile单独执行。快速开始步骤定义xbatis实体示例代码展示了如何定义xbatis实体如 Table(sys_user) 等。执行自动建表示例代码展示了如何执行自动建表如 DDLAuto.of(DbType.MYSQL).add(SysUser.class).execute(dataSource)。不同模式介绍CREATE模式默认模式表不存在执行 CREATE TABLE表已存在跳过。UPDATE模式用于补新增字段和缺失索引表不存在执行 CREATE TABLE表已存在只对新增字段执行 ALTER TABLE ... ADD COLUMN ... 并创建缺失索引且不会重复添加已存在字段或索引。只生成SQL / 预览SQL不连接数据库可生成建表SQL传入 DataSource 或 Connection 可按当前数据库状态预览SQL不同情况有不同返回结果也可使用底层构建器生成单个字段的新增列SQL生产或准生产环境建议先审核SQL再执行。执行监听设置DDL按SQL列表逐条执行可配置执行监听器记录已执行SQL执行失败时 SQLException 消息包含当前失败SQL和已执行SQL生产或准生产环境建议先审核SQL再执行。支持的注解详情Table用于解析表名和schema。TableId用于识别主键和数据库自增不同情况有不同处理方式UPDATE 模式会读取已有序列只创建缺失序列。ColumnDefinition用于控制建表字段定义有多种常用配置unique true 表示单字段唯一约束不同模式和数据库有不同处理。Index用于在实体类上声明数据库索引不同模式下有不同操作ClickHouse不支持时会抛出异常。PostgreSQL和SQL Server字段注释会生成相应SQL。类型映射情况默认类型映射包括 String 等多种Java类型到数据库列类型的映射具体类型会根据 DbType 做方言调整。

关于本文作者

来自尧图内容编辑团队

尧图内容编辑团队 内容团队

尧图内容编辑团队

本文由尧图网络内容编辑团队执笔。团队由资深项目经理、前端工程师与设计师组成,所有内容均来自亲手交付的真实项目,先讲清问题、再给出可落地的解法。尧图深耕北京网站建设十年,服务过京华建材集团、智造科技等各行业客户,把一线经验沉淀为可复用的行业观察。

  • 十年建站经验,覆盖建材、制造、服务、文创等
  • 项目经理把关选题与事实准确性
  • 工程师与设计师联合撰写专业细节
  • 统一编辑规范,保证文风与排版一致
  • 每月复盘转化数据,迭代选题方向

延伸阅读

相关资讯与近期热门内容

深度阅读推荐

建站决策前值得细读的三篇

网站改版的5个关键决策
2024-08-12

网站改版的5个关键决策

什么时候该改版、改到什么程度、如何避免流量掉光,京华建材集团改版复盘给出答案。

获取专属建站方案

看完文章,把您的行业与预算告诉我们,免费获取一份量身定制的官网建设方案与报价。

立即免费咨询