【发布时间】:2016-03-30 14:17:18
【问题描述】:
javax.persistence.schema-generation.database.action 的允许值为
- 无(不提供任何服务...)
- create(仅在应用程序第一次启动时有效,因为如果创建了已存在的架构,则由于大多数数据库(例如 derby 11.x)所有进一步的启动都会失败
- drop-and-create(它永远不会持久化任何数据,这引发了为什么它是持久性标准规范的一部分的问题 - 假设调试目的)
- drop(对称失败
create成功
这绝对没有选择使用这些值中的任何一个,我也看不出它们的规范有任何意义 - 假设您不希望应用程序的用户启动应用程序一次(使用create),破解@ 987654324@ 文件,重新打包您的应用程序并将其与none 一起使用。那么如何使用它们在应用程序重启时持久化 Java 对象呢?
我知道 Hibernate 的 hibernate.hbm2ddl.auto 效果很好,但我正试图为 JPA 2.1 实现可移植方法解开谜团。
【问题讨论】: