Java笔记 ·

springBoot生成SQL文件-总结

本篇对之前的做个小结,整体的对比下几种方案使用时的优缺点,至于使用哪种方案,只能看实际情况了。

目录

序号 方案 优点 缺点
1 jpa属性 最简单的方式 1.生成的全量脚本无分隔符“;”。 2.未找到实现增量的方式。
2 Hibernatet通过mian函数全量/增量 无需构建项目 1.需要手动配置数据库方言属性。 2.手动配置扫描路径的范围,配置不好容易缺失。 3.增量脚本中仅有新增语句,无drop相关的修改语句。
3 Hibernatet通过构建项目实现全量/增量 无需单独设置数据库方言等属性,即序号2中的前两项缺点均不存在 1.需要构建项目,若项目过大,启动时比较耗时间。2.增量脚本中仅有新增语句,无drop相关的修改语句。
4 Liquibase两数据库对比 通过gradle的task命令即可生成需要的增量脚本,Liquibase本身可单独做数据库版本管理工具 1.需要配置两个数据库。2.全量脚本需要手动创建与维护ChangeLog文件。
5 Liquibase数据库与jap注解entity对比(可看做数据库与全量脚本文件对比) 同序号4 1.目前仅适用于单模块项目。2.生成全量脚本需要手动创建与维护ChangeLog文件。

参与评论