Возможно, я смешиваю термины, но то, что я называю простой сущностью, - это что-то вроде Customer
или Product
, т. Е. Вещь, имеющая свою личность и для которой я использую Integer id
.Hibernate скомпонованный объект
Сложная сущность - это что-то вроде CustomerProduct
, что позволяет создавать отображение m: n и связывать некоторые данные с ним. Я создал
class CustomerProduct extends MyCompositeEntity {
@Id @ManyToOne private Customer;
@Id @ManyToOne private Product;
private String someString;
private int someInt;
}
, и я получаю сообщение
класс Композит-идентификатор должен реализовывать Serializable
, которые приводят меня непосредственно к этим twoquestions. Я мог бы реализовать Serializable
, но это означало бы сериализовать Customer
и Product
как часть CustomerProduct
, и это не имеет для меня никакого смысла. Мне нужен составной ключ, содержащий два Integer
, так же как обычный ключ - всего один Integer
.
Есть ли у меня трек?
Если нет, как я могу указать это, используя только аннотации (и/или код)?