java - 告诉 Hibernate 只为一个实体创建一个新表

标签 java hibernate

我已经在我的项目中添加了新类。如果我使用 hibernate.hbm2ddl.auto=create 属性,它会为整个项目重新创建表,但我需要 Hibernate 来为这个新类创建和执行 DDL

最佳答案

因此您需要为 hibernate.hbm2ddl.auto 属性使用 update 值。这样,hibernate 将只更新模式而不完全重新创建它。

因此,如果您想捕获表 ddl 语句,请删除您的数据库,取消映射您的实体并让 hibernate 创建没有您的实体的整个模式。稍后,启用实体映射,并再次运行 hibernate 。

但是,我建议您使用 liquibase,而不是使用 hibernate.hbm2ddl.auto 属性,这是一种更强大的方法。你可以看到一个演示项目here

关于java - 告诉 Hibernate 只为一个实体创建一个新表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32644812/

相关文章:

java - Spring事务和 hibernate : lazy initialization

java - JPA 对于原始属性也是懒惰的吗?

java - Spring JDBC 持久化 ZonedDateTime

java - 如何安装 play2War 插件 (Play Framework 2.1.1.)

java - JSP中的空指针异常

javax.servlet.http.Part.getSubmittedFileName()Ljava/lang/String

Java JDBC - 使用合并排序进行批量插入的准备语句

java - 嵌入式tomcat 8.0.21中的Spring websocket

java - 使用 JTable 的 ClassCastException?

java - 如何在Spring框架中的Hibernate一对多关系中仅从父类获取json数据