springBoot生成SQL文件-总结
- 2020 年 1 月 22 日
- 筆記
本篇对之前的做个小结,整体的对比下几种方案使用时的优缺点,至于使用哪种方案,只能看实际情况了。
目录
- springBoot+jpa根据实体类注解生成SQL文件
- springBoot生成SQL文件-使用Hibernate5的SchemaExport实现01
- springBoot生成SQL文件-使用Hibernate5的SchemaExport实现02
- springBoot生成SQL文件-Hibernate5的SchemaUpdate实现
- springBoot生成SQL文件-基于Liquibase实现
- 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文件。 |