【发布时间】:2011-03-31 04:05:24
【问题描述】:
我目前遇到了一个看似非常简单的问题,但我似乎找不到解决方法:
我有 2 个相同的表:
- tbl_creditcard_approved_txns
- tbl_creditcard_declined_txns
两者中的字段是相同的,我有一个类 - Transaction 用于表示表中所有适当的字段。
我正在尝试将两个不同的实体(每个表一个)映射到上述类。在旧世界中,我会创建两个hbm.xml 文件,每个表一个,并将它们都映射到Transaction。然后,我会在持久化期间使用实体名称来确保对象被持久化在正确的表中,具体取决于具体情况。
我目前正在尝试使用注释来实现相同的目的,但到目前为止,我还没有成功将 2 个实体映射到 single 类。这可能吗?
我目前正在使用不同的方法,因为我已将所有公共字段(相同的列名)提取到 @MappedSuperClass 中,并创建了两个从超类扩展的独立类(每个实体一个)(这些类只是具有相同的字段,但在适用的情况下具有不同的列名)。
【问题讨论】:
-
Pascal,这确实是意图,唯一的区别是我希望将两个不同的实体映射到同一个类。与 JPA 不同,在 hibernate 中,类可以与实体不同。然而,从本质上讲,我真的在尝试将一个类映射到两个表。
标签: java hibernate orm jpa annotations