Java 处理现有JPA持久性类中的更新的策略
我们正在做一个计划使用JPA持久性的项目。我们认为,一旦项目上线,就很可能需要对数据模型进行更改 我的问题是,有什么不同的策略可以处理这种变化。我特别有以下问题:Java 处理现有JPA持久性类中的更新的策略,java,jpa,ejb,data-migration,Java,Jpa,Ejb,Data Migration,我们正在做一个计划使用JPA持久性的项目。我们认为,一旦项目上线,就很可能需要对数据模型进行更改 我的问题是,有什么不同的策略可以处理这种变化。我特别有以下问题: 对于更新的JPA类,将它们合并到现有数据库模式中的最佳实践是什么 对于JPA,是否有任何最佳实践来归档旧数据、更新数据库模式,然后再次将数据库迁移到新模式 什么样的变化(广义地说)会使这种迁移变得不可能 在RHQ()中,我们有一些dbutil,它们有一个XML模式描述,用于填充空数据库上的初始模式,然后是另一个XML文件,该文件将对该
还有其他类似的框架可以帮助您解决此问题。您也可以查看此框架: 广告名为:“面向Java的敏捷数据库迁移框架” 根据我的经验,迁移不是问题所在(hibernate可以自动完成),但如果您处理的是破坏性的更改,回滚就是问题所在。例如,如果删除列,则无法回滚该更改,除非将该列中的数据备份到某个位置。最好的备份方式可能取决于您的数据库供应商