这个问题基于之前发布的两个线程。
使用 JPA(带注释的实体)和 liquibase 进行休眠
Liquibase diffChangeLog 针对 Hibernate 映射定义
我的困惑是,如果我使用休眠注释,我还需要在变更日志中编写变更集吗?
另外,现在很多人都在使用休眠注释,我希望有人能给我一个真正让它工作所需的例子。互联网上没有很好的例子。
这个问题基于之前发布的两个线程。
使用 JPA(带注释的实体)和 liquibase 进行休眠
Liquibase diffChangeLog 针对 Hibernate 映射定义
我的困惑是,如果我使用休眠注释,我还需要在变更日志中编写变更集吗?
另外,现在很多人都在使用休眠注释,我希望有人能给我一个真正让它工作所需的例子。互联网上没有很好的例子。
liquibase hibernate diff 的 JPA/Annotation 支持尚未经过过度测试,并且并未涵盖所有案例和注释,因此鉴于当前状态,它可能还没有准备好作为正常工作流程的一部分来依赖。
话虽如此,即使/当它经过全面测试时,手动编写变更集也可能有意义。hibernate 支持在当前数据库和数据库 hibernate 期望和输出变更集之间进行差异,以从当前数据库移动到 hibernate 数据库。虽然这通常有效,但任何基于数据库差异的过程都存在固有问题(请参阅http://blog.liquibase.org/2007/06/the-problem-with-database-diffs.html)。就个人而言,由于最好在执行它们之前检查并可能修改由休眠差异添加的变更集,我觉得自己添加它们同样容易。这样我就可以利用更高级别的更改(例如,introductionLookupTable),使 changeLog 更具可读性。
肯定有一些环境和工作流的变更集生成很好,这就是为什么它会被支持,但它还没有,你当然可以在没有它的情况下使用带有 hibernate 的 liquibase。