Hibernate 忽略扩展类的 @Table(name = "...") - 创建的表名都是小写的
我们通过 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
就像我说的,对于普通表,一切正常。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
不应该是基类中表的名称。
Shouldn't be the name of table in the base class instead.