OneToMany без указания класса владельца - PullRequest
0 голосов
/ 13 сентября 2018

Как я могу объединить продукт с изображением как oneToMany без указания класса владельца? Использовать 'image' для таблиц разных владельцев?

@Entity
@Table(name = "product")
public class Product extends BaseModel {//baseModel has 'id' column
@Column
private List<Image> images;
}
}

@Entity
@Table(name = "image")
public class Image extends BaseModel {//baseModel has 'id' column
@Column 
private Object owner;
}

1 Ответ

0 голосов
/ 13 сентября 2018

JPA работает таким образом, как обычно.

Ваша сущность Продукт должен быть оформлен так:

@OneToMany(mappedBy="imageId")
private List<Image> images;

Для любой другой таблицы вы просто указываете столбец mappedBy с правильным именем

Ваша сущность Изображение должно быть оформлено так:

@ManyToOne
@JoinColumn(name="imageId", nullable=false)
private Product product

Если вы хотите повторно использовать какую-то сущность, я думаю, что это невозможно.Лучше всего думать, что на самом деле не использовать отношения @xTox, они просто приносят боль

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...