由于springboot的审核名称列错误而导致架构无效

q0qdq0h2  于 2021-07-06  发布在  Java
关注(0)|答案(2)|浏览(284)

我目前正在为一个使用springboot的旧java应用程序开发restapi。
当我扫描我的实体时,我有:

org.hibernate.tool.schema.spi.SchemaManagementException: Schema-validation: missing column [rev] in table [schema.object_aud].

实际上,我的rev列名为“revision\u id”。
我不想改变这个名字,因为它在许多应用程序中使用,我不想有副作用。。。
如何配置引导以检查该名称而不是“rev”。
谢谢你的帮助!

gkl3eglg

gkl3eglg1#

如果我正确理解了这个问题,那么您在实体类中有一个不同的列名称。您可以使用以下注解定义您的rev attriute:
@列(name=“revision\u id”)
现在验证将在模式中查找“revision\u id”列。

r8uurelv

r8uurelv2#

如果有人读了这篇文章,我发现了一个解决方案:在application.yml/application.properties中,我添加了以下行

spring.jpa.properties:
      org.hibernate.envers.revision_field_name: revision_id
      org.hibernate.envers.revision_type_field_name: revision_type

而且效果很好。

相关问题