我们通过分配:
自动通过Hibernate创建表@Table(name = "some_table")
过去常用于“普通”实体。但是当我们有一个抽象基类时:
@Entity
@Inheritance(strategy = InheritanceType.SINGLE_TABLE)
public class PersonBankAccount extends AbstractPersistable<Long> {
由
扩展@Entity
@Table(name = "person_bank_account")
public class PersonBankAccountSimple extends PersonBankAccount {
数据库中的结果表名为
personbankaccount
这里发生了什么?
自动生成器说:
table not found: PersonBankAccount
首次创建并重新运行时,他说:
table found: personbankaccount
就像我说的,对于普通的表格,一切正常。
答案 0 :(得分:7)
不应该是基类中表的名称。
@Entity
@Inheritance(strategy = InheritanceType.SINGLE_TABLE)
@Table(name = "person_bank_account")
public class PersonBankAccount extends AbstractPersistable<Long> {