您现在的位置是:首页 > 文章详情

mybatis-table-modify 1.5.1-beta3,自动生成和变更表结构组件更新

日期:2023-05-06点击:573

项目介绍

本项目 Fork 自 A.C.Table,之前在其他项目中用到了 A.C.Table, 并对功能进行了改造。因为该 A.C.Table 项目近期发生了停更,所以打算把这些功能给开源出来,同时继续将这个项目完善下去。

项目地址:https://gitee.com/bootx/mybatis-table-modify,非常欢迎看看项目介绍留以及个Star呀🤺🤺🤺

更新说明

  • fix: 获取MySqlFieldType
  • fix: 打包时未把mapper 导入jar

功能说明

  • 支持自动创建和更新数据库表结构
  • 支持指定表的名称、字符集、引擎类型、注释等信息
  • 支持指定表字段的类型、排序、非空、自增、默认值、长度等信息
  • 支持配置索引,包括指定字段、类型、注释等
  • 支持多种更新模式:创建和更新表、只创建不更新、删除后重新创建、不进行任何操作

 路线图

  • 1.5.1 主要目标:调整项目结构,去除除表维护相关的其他功能,代码暂时只适配 Spring Boot 项目
  • 1.5.2 主要目标:拆分为 Maven 多模块项目,支持非 Spring Boot 的项目接入
  • 1.5.x 目标:
    • 支持 SQL Server 数据库的表维护
    • 支持 Oracle 数据库的表维护
    • 支持达梦数据库的表维护
    • 提供接入其他类型数据库的插件机制
  • 1.6.x 目标:
    • 支持非 Spring 中间件的项目接入
    • 支持多数据源中间件

使用说明

添加 pom 依赖

  <dependency>  <groupId>cn.bootxe</groupId>  <artifactId>mybatis-table-modify</artifactId>  <version>${latest.version}</version>  </dependency> 

最新版本

配置要建表的路径

无论是使用 MyBatis 还是 MyBatis Plus,需要保证项目中的 mapper 被扫描到,否则会报错无法启动,项目中 mapper 文件所在的路径为 classpath*:cn/bootx/mybatis/table/modify/impl/*/mapper/*TableModifyMapper.xml

 mybatis-table:  # 数据库类型  database-type: mysql  # 更新类型  update-type: create  # 扫描包路径, 可以用 ,和 ; 分隔  scan-package: cn.bootx.**.entity 

核心注解

不同的数据库各自会有一些专属的注解,通常适用于对应类型数据库专有的配置,如 MySQL 专有的 MySqlEngine(存储引擎)MySqlFieldType(字段类型) 

@DbTable

表注释,标注在要进行建表的实体类上

属性 类型 默认值 描述
name String "" 表名,未配置时会读取 TableName 中的配置
value String "" 表名,未配置时会读取 TableName 中的配置
comment String "" 表注释
charset MySqlCharset "" 数据库默认字符集
isSimple boolean true 是否开启 simple 模式配置,开启后字段不写注解 @Column 也可以采用默认的驼峰转换法创建字段
excludeFields String[] {} 需要排除的属性名,排除掉的属性不参与建表,静态字段默认会被排除

@Column

字段注解,@DbTable 开启 simple 模式后,@DbColumn 不标注也会根据规则进行转换

属性 类型 默认值 描述
name String "" 行名,未配置时会读取 Column 中的配置
value String "" 行名,未配置时会读取 Column 中的配置
order int 0 数据库字段排序,数字小的在前面,大的在后面
type MySqlFieldType DEFAULT 不填默认使用属性的数据类型进行转换,转换失败的字段不会添加
length int 255 字段长度,默认是 255
decimalLength int 0 小数点长度,默认是 0
isNull boolean true 是否为可以为 null,true 是可以,false 是不可以,默认为 true
isKey boolean false 是否是主键,默认 false
isAutoIncrement boolean false 是否自动递增,默认 false,只有主键才能使用
defaultValue String "DEFAULT" 默认值,默认为 null
comment String "" 数据表字段备注
ignore boolean false 是否排除该字段,默认不排除

🥂 Bootx 项目合集

  • Bootx-Platform 单体版脚手架
  • Bootx-Cloud 微服务版脚手架
  • Dax-Pay 支付开发平台
  • Mybatis-Table-Modify 数据库表结构管理
  • Bpm-Plus 工作流开发平台

🍻 鸣谢

感谢 JetBrains 提供的免费开源 License:

JetBrains

🍷License

Apache License Version 2.0

 

原文链接:https://www.oschina.net/news/239673/mybatis-table-modify-1-5-1-released
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章