java - 最近开始学习hibernate,有以下疑惑

标签 java hibernate jdbc frameworks relational-database

最近开始学习hibernate,有以下疑惑

如果我错了,请纠正我。

  1. 如果 hbm2ddl.auto 设置为 create,每次 hibernate 尝试与任何表交互时,该表都会首先被删除。

  2. 因为 hibernate 每次与表交互时都会删除一个表,所以如果我想更新一条记录,我无法将 hbm2ddl 值配置为 create。

最佳答案

每次 Hibernate 与其交互时,该表都不会被删除并重新创建——它会在 SessionFactory 初始化时被删除并重新创建。这通常意味着您的应用程序启动时。因此,如果您正在进行一些测试,希望每次应用程序运行时都以干净的数据库开始,则将 hbm2ddl.auto 设置为“create”是合理的。

有关更多信息,请参阅community documentationthis previous question .

关于java - 最近开始学习hibernate,有以下疑惑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53324541/

相关文章:

java - java/webdriver中每个记录级别的两个嵌套 map 数据验证

java - Spring MVC 4.2.2 和 Hibernate 5.0.2 给出错误

java - 如何解决java.lang.NoSuchMethodError : org. hibernate.integrator.internal.IntegratorServiceImpl

eclipse - 如何将 Hibernate Tools 安装到 Eclipse Luna 中?

Java PreparedStatement 将 IN 参数设置为 int 数组

java - 插入查询 - executeUpdate 返回 -1

java - 如何使用 JDBC 在 MySQL 中添加一个 'time' 类型?

java - 如何在 Wicket 口表中打印对象列表?

java - 无法在 IntelliJ Idea IDE 中解析符号 javafx.application

java - Java 中是否有等效的 ASP.NET 控件缓存和 Post-cache 替换