我目前的Spring 3.0项目正在与Flyway集成.
感谢谷歌网站,所以有我可以指望的文件.但不幸的是,没有太多关于与JPA整合的讨论.
所以问题是:
>如何将Flyway与persistence.xml集成?它是如何工作的?每次JPA提供程序将自动生成架构更新,以便我们如何在之前或之后运行脚本?
>我想到目前为止flyway的查询不支持HQL,那么是否有任何示例代码,然后我可以了解如何集成迁移事件?设计拦截器或新方面?在域级别上做什么?
任何提示都表示赞赏.提前致谢.
Flyway不支持JPA和Spring.它基本上按顺序运行您的sql(而不是HQL)脚本并跟踪它们.并且做得好.它仍然与您如何使用数据库以及如何生成升级脚本无关.
原文链接:https://www.f2er.com/spring/432690.html但是,有希望.您的持久性提供程序很可能支持更新现有模式(我知道hibernate和eclipselink可以),在启动时运行ALTER和CREATE语句.迁移sql脚本并不完美,它并不总是有效,但它是一个良好的开端.记录这些脚本,收集到sql文件中,清理并用作提供给Flyway的V _ * .sql文件.
更新:虽然没有直接支持spring框架,但您可以轻松integrate it with existing Spring application.这种方法被证明适用于生产并且可以很好地运行:
额外奖励:它在Java配置(使用Scala)方面也很有用:
@Bean(initMethod = "migrate")
def flyway() = {
val fly = new Flyway()
fly.setDataSource(dataSource)
fly
}