【发布时间】:2011-12-28 17:06:03
【问题描述】:
我有一个小架构,由 jpa2 映射的 ~10 个类组成,hibernate 作为提供者。所有类都以相同的基本方式构建(类的@Entity 注释,ID 为@Id 和@GeneratedValue)。所有类都有默认的构造函数和默认的 getter/setter。
除了一个类之外的所有类都相互关联(通过关联或继承)。而这一类在schema生成过程中并没有得到数据库中创建的数据库表。
我用hbm2ddl.auto尝试了以下设置:
create:创建除一个之外的所有表。当第一次访问实体时会引发异常:com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Table '...' doesn't exist(如果代码在 Oracle DB 上运行,则为 oracle 等效项)。
validate:hibernate 在模式验证期间抱怨缺少表。
更新:表没有被创建,并且在第一次访问该类的实体时抛出异常(如 create)。
有人对此有任何想法吗?
【问题讨论】:
-
能贴出失败实体的源码吗?
-
您使用的是特定于 Hibernate 的配置,还是 JPA
persistence.xml格式?请在您的问题中包含配置。
标签: java hibernate jpa-2.0 hbm2ddl