【问题标题】:Any API available for LiquiBase任何可用于 LiquiBase 的 API
【发布时间】:2012-08-22 16:12:01
【问题描述】:

如果当前 Spring Web 应用程序(使用 OpenJPA)有新的服务包,则用户界面需要提供升级数据库更改的选项。

似乎 LiquiBase 是一个不错的选择。但是我还没有找到任何关于 LiquiBase API 的文章或文档可以检测到新的模式更改(来自数据库或更改日志)。看起来 LiquiBase 更像是开发级别的“静默升级”选项,因此每次开发人员都可以创建新的更改日志并让 Maven 自动升级数据库架构。

但是我们是否可以为前端用户提供任何选项来单击按钮以根据他们的选择升级架构,然后在失败时显示用户错误并回滚?一般来说,有没有一些Java API可以用Spring框架包装?

提前致谢。

【问题讨论】:

  • Liquibase 只是一个 Java 库。它的 API 在这里描述:liquibase.org/api/index.html
  • @a_horse_with_no_name 谢谢。是的,JavaDoc 很有帮助,但把我拖入了一条学习曲线。是否有任何文章或文档我可以阅读并做一些定制的实现?即我想设计一个 Java 函数来自动检测 ChangeLog 中的更新。我们怎样才能做到这一点?我在哪里可以找到这类东西的信息?
  • Liquibase API javadoc 现在是here

标签: java spring maven liquibase


【解决方案1】:

我不得不说一个非常讨厌的 Liquibase,主要是因为我只是出于某种原因无法让它工作。

您可能想尝试一下:

http://flywaydb.org/

否则(因为这听起来像是您运送产品)您可以创建两个安装:一个旧版本和一个新版本。

为每次安装进行模式转储,然后对它们进行比较。根据差异创建上下 sql 脚本。

【讨论】:

  • 感谢您的反馈。似乎 flyway 需要为多个版本提供额外的存储空间,目前在我的情况下这是可行的。我让 LiquiBase 工作,但它非常顺利。
  • 但我还必须提到FlywayLiquibase 都没有及时更新其文档。要么缺少 API 文档,要么跟不上最新版本。但是作为小团体开发的实用程序,这是非常合理的。所以这不是抱怨,但希望以后我们可以有更多的文档来减少学习曲线。
  • @Subarule 我已经放弃了几乎所有的 Schema Evolution 工具。它们似乎总是比我可以通过区分模式自己创建的一些向上(添加模式)和向下(回滚模式)sql脚本更难。
猜你喜欢
  • 1970-01-01
  • 2013-07-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-12-17
  • 2023-03-11
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多