我们的架构是由Hibernate映射正在演变随着时间的推移,我们正在使用的飞行路线不同版本之间迁移;它的效果很好。然后,我们会在我们的CI构建管道中自动对数据库的副本进行迁移,然后启动hibernate以验证我们的模型与我们的模式是否兼容,从而确保迁移在部署时可以正常工作。查找数据库DDL映射字段
然而有一个问题,如果我们忘记删除数据库中的一个领域,但在模型中取出。如果该字段是NOT NULL字段或外键,问题会变得更糟。
因此,我想在启动过程中建立一个检查,验证数据库不包含任何休眠未知的字段。 Hibernates SchemaValidator检查数据库中没有字段缺失,但不关心反斜杠。
任何想法,我可能会写这个逻辑。我在想,我可能SchemaValidator得到的DDL,但似乎有很多缺陷照顾。
当我在Google中进行依赖注入搜索时,我总是将关键字'自定义'。在这种情况下,“hibernate CustomSchemaValidator”即https://gist.github.com/jelies/8951881 – HRgiger