我已经将Hibernate5 / Oracle12c Web应用程序从Glassfish 4迁移到了Tomcat 9。
只要Tomcat正在运行,该应用程序就可以运行。它从数据库中读取预先存在的数据并正确显示。它允许创建新数据。它允许编辑数据。如果启动第二个浏览器,则会看到新的和编辑的数据。
但是,当我关闭Tomcat并重新启动它时。所有新记录和编辑后的数据均已消失,仅存在新的读取。我是Hibernate的新手,所以它可能很简单,但是通过搜索找不到任何帮助。
答案 0 :(得分:0)
请检查代码中的 hibernate.ddl-auto 设置。看来您正面临 create-drop 的局面。
hibernate.hbm2ddl.auto自动验证或导出模式DDL 创建SessionFactory时将其添加到数据库。通过create-drop, 关闭SessionFactory时将删除数据库架构 明确地。
例如验证更新|创建|创建拖放
所以可能的选项列表是