【发布时间】:2012-04-27 01:17:45
【问题描述】:
我有一个使用 SQL Server Express 作为后端数据库的 Java EE 应用程序。 当我们部署新版本时,有时我们需要更改数据库:添加表、添加列、删除列、合并表、合并列等。
直到今天,我们都使用离线 SQL 脚本来修改数据库,但这种解决方案不可扩展且非常容易出错。
我们开始使用具有@PostConstruct 修饰方法的单例启动bean 来添加和删除系统在部署期间使用的数据。
我们现在还想发布 DML 语句,以便我们可以在部署期间升级我们的数据库并一劳永逸地消除 SQL 脚本。
- 有没有人尝试过,这是好的方向吗?
- 我们应该使用 entityManager.unwrap 方法还是简单地将 JDBC DataSource 资源注入到我们的单例启动 bean 中?
【问题讨论】:
-
您可以查看一些架构迁移工具的简要比较。 stackoverflow.com/a/28055590/2658613
标签: database jakarta-ee glassfish dbmigrate