項目介紹
本項目 Fork 自 A.C.Table,之前在其他項目中用到了 A.C.Table, 并對功能進行了改造。因為該 A.C.Table 項目近期發生了停更,所以打算把這些功能給開源出來,同時繼續將這個項目完善下去。
項目地址:https://gitee.com/bootx/table-modify,非常歡迎看看項目介紹留以及個 Star 呀??????
更新說明
- 新增忽略表更新功能
- 去掉mybatis plus的強制依賴
- 更改為Spring Data Jdbc進行數據操作
- 增加PostgreSql對應自動建表
- 支持字節數組的默認映射
功能說明
- 支持自動創建和更新數據庫表結構
- 支持指定表的名稱、字符集、引擎類型、注釋等信息
- 支持指定表字段的類型、排序、非空、自增、默認值、長度等信息
- 支持配置索引,包括指定字段、類型、注釋等,可以快速索引
- 支持多種更新模式:創建和更新表、只創建不更新、刪除后重新創建、不進行任何操作
路線圖
- 1.5.4 主要目標
- 支持PostgreSQL數據庫的表新建功能
- 不再依賴Mybatis和Mybatis Plus,SQL執行使用JdbcTemplate
- 1.5.x 目標:
- 支持PostgreSQL數據庫的表更新功能
- 支持SQL Server數據庫的表維護
- 支持Oracle數據庫的表維護
- 支持達夢數據庫的表維護
- 提供接入其他類型數據庫的插件機制
- 1.6.x 目標:
- 支持非Spring中間件的項目接入
?? 使用說明
推薦只在開發時使用,生產環境停用自動更新。如何使用可以參考示例項目示例項目: table-modify-example演示項目 ,以及項目使用文檔
添加pom依賴
<dependency> <groupId>cn.bootx</groupId> <artifactId>table-modify-mysql-boot-starter</artifactId> <version>${table-modify.version}</version> </dependency>
配置文件配置
mybatis-table: # 更新類型 update-type: create # 掃描包路徑, 可以用 ,和 ; 分隔 scan-package: cn.bootx.**.entity # 是否開啟快速失敗模式, 出現錯誤項目直接中止啟動 fail-fast: false
其他配置
無論是使用MyBatis還是MyBatis Plus,需要保證項目中的
mapper
被掃描到,否則會報錯無法啟動,項目中
mapper
文件所在的路徑為classpath*:cn/bootx/mybatis/table/modify/impl/*/mapper/*TableModifyMapper.xml
MyBatis配置掃描
mybatis: mapper-locations: classpath*:mapper/**/*Mapper.xml
MyBatis Plus配置掃描
# mp配置 mybatis-plus: mapper-locations: classpath*:mapper/**/*Mapper.xml
?? Bootx 項目合集
- Bootx-Platform 單體版腳手架
- Bootx-Cloud 微服務版腳手架
- Dax-Pay 支付開發平臺
- Mybatis-Table-Modify 數據庫表結構管理
- Bpm-Plus 工作流開發平臺
?? 鳴謝
感謝 JetBrains 提供的免費開源 License:
??License
Apache License Version 2.0