Hibernate hbm2ddl.auto 可以取哪些值,它们的作用是什么?
大家好!我是 Java 和 Hibernate 的新手,一直搞不懂 hibernate.cfg.xml 文件中 hbm2ddl.auto 的配置。我在不同项目中看到过这些值:create、update、validate、create-drop 和 none。但文档对我来说太复杂了。
以下是我的配置示例:
<property name="hibernate.hbm2ddl.auto">update</property>
我运行应用程序时,它似乎能正常工作,但我担心在修改实体(比如添加新字段)时,数据库中的数据可能会丢失。例如,我有一个 User 类,包含 id、name 和 email 字段。如果我添加一个 phone 字段,表会发生什么变化?Hibernate 会自动添加列吗?如果我删除 email 字段,列会被删除吗?如果设置为 create,所有数据都会丢失吗?
请指教,谢谢!