3

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

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

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

提前致谢。

4

1 回答 1

2

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

您可能想尝试一下:

http://flywaydb.org/

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

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

于 2012-08-22T21:33:59.133 回答