spring-data-jpa JPA/Hibernate -如何为某些类生成ddl,而不为其他类生成ddl

aiazj4mn  于 2022-11-10  发布在  Spring
关注(0)|答案(1)|浏览(210)

是否可以在类级别而不是整个应用程序级别上关闭DDL生成?
我有一个报告应用程序,到目前为止,我们的设置是application.properties

jpa.generateDdl=false

在这个应用程序中,我们实际上有几个不同的视图,这些视图填充了用@Entity注解的java对象。
但是现在我们想要添加其他我们确实想要持久化的对象。
如果我打开jpa.generateDdl=true,那么它将为这些视图生成表,这是我们想要避免的。有没有方法可以防止这种情况发生,同时仍然允许其他对象持久化?

92vpleto

92vpleto1#

不,这不可能。
正如在Hibernate文档中所写的,您不应该将该特性用于生产应用程序。
尽管自动模式生成对于测试和原型设计非常有用,但在生产环境中,使用增量迁移脚本管理模式要灵活得多。
https://docs.jboss.org/hibernate/orm/current/userguide/html_single/Hibernate_User_Guide.html#schema-generation
我建议使用Liquibase或Flyway进行数据库迁移。

相关问题