у меня есть к таблицам с круговой ссылкойКак Hibernate Аннотации с циклическими ссылками
-----------------| |------------------
product | | product_detail
-----------------| |------------------
product_id <pk> | | detail_id <pk>
... | <-----------------| container_id <fk>
| <-----------------| product_id <fk>
| | ...
Я хочу знать, как сделать аннотации собственности
Как сделать @OneToMany аннотацию
Class Product
@OneToMany ???
public List<Detail> getDetails();
Как сделать @ManyToOne аннотаций
Class Detail
@ManyToOne ???
public Product getContainer();
@ManyToOne ???
public Product getProduct();
Я хочу использовать следующий код позже:
Product p1 = new Product(name2);
Product p2 = new Product(name1);
Detail d = new Detail();
d.setProduct(p2);
p1.getDetails().add(d);
...
Session.save(p1);
Затем Hibernate вставки в продукт и вставить в детали слишком.
Я не нахожу способ создания аннотаций для этого. Не могли бы вы мне помочь?
https://en.wikibooks.org/wiki/Java_Persistence/OneToMany#Example_of_a_OneToMany_relationship_and_inverse_ManyToOne_annotations –
mappedBy (на '@ OneToMany') делает его BIDIRECTIONAL отношение. Вот и все, что необходимо –
Да, это было так, как я пробовал до публикации, но затем я получил превышение времени ожидания. @OneToMany (mappedBy = "container") для списка getDetails() и @ManyToOne @JoinColumn (name = "container_id") для getContainer() – axiorema