dem*_*g0d 3 hibernate jpa liquibase spring-data-jpa
我有点困惑。我想将关系数据库(Postgres 或 MySQL)与 Spring JPA 一起使用。我喜欢注释,以及如何定义模型和它们之间的关系、连接和使用存储库。根据我的阅读,似乎不建议使用 Hibernate 的自动 DDL 生成功能,应该禁用它。这是有道理的,我想通过 liquibase 跟踪代码中的数据库更改,这要稳定得多。
现在到我难以理解的令人困惑的部分。我仍然可以使用 JPA 注释来定义 @OneToMany 或 @JoinColumn 等内容吗?这正是我通过 liquibase 中的变更集所做的事情。我们是否仍然应该使用注释,或者我们可以吗?
有人可以解释一下这个工作流程或指出概述结合使用 Liquibase 和 Spring Data JPA 的正确方法的文档吗?
使用 Liquibase AND 注释不仅可以,而且可能是最常见的用例。
这些注释的用途与 Liquibase 截然不同。它们描述了如何将 Java 代码片段映射到数据库模式。
Liquibase 创建并发展了这个数据库模式。
注释不包含有关模式的不同版本的信息。这就是为什么您不应该将 Hibernates DDL 生成用于实际的生产模式,尽管它在某种程度上可能适合开发和测试。当然,在某些时候,您应该使用与生产时生成的模式完全相同的模式来测试您的应用程序。
Liquibase 没有关于如何完成模式与 Java 对象之间的映射的信息。
当然,也有重叠的情况。如果您的注释表明某个字段应映射到x表中的列t,Liquibase 应使用该列(以及 Hibernate 所需的类型)创建该表。
我通常这样做的方式是:
当然,如果您从数据库模型开始,您的过程可能看起来非常不同。
| 归档时间: |
|
| 查看次数: |
2201 次 |
| 最近记录: |