Я использую spring jpa + hibernate для подключения к базе данных Oracle с 2 таблицами: Customers
и LegacyCustomers
.
Customers
расширяет LegacyCustomers
, добавляя некоторые дополнительные колонны.
@Entity
@Table(name="Customers")
public class Customers extends LegacyCustomers {
@Column(name="NewId") private String newId;
@Column(name="PhoneNumber") private String phoneNumber;
}
@Entity
@Table(name="LegacyCustomers")
@Inheritance(strategy = InheritanceType.TABLE_PER_CLASS)
public class LegacyCustomers {
@Column(name="OldId") private String oldId;
@Column(name="Name") private String name;
@Column(name="Address") private String address;
}
Однако это совершенно разные таблицы.Я ищу способ выражения отношений в java, но избегаю полиморфизма, который hibernate создает при запросе к таблице суперкласса (LegacyCustomers
).Как я могу сказать hibernate использовать только столбцы из суперкласса, когда я запрашиваю LegacyCustomers
?
К сожалению, аннотация @Polymorphism
, предложенная здесь , не помогает.
Спасибо за помощь