@Quad_Tree

Как реализовать OneToMany связь?

У меня есть класс продукта:
@Entity
public class Product {

    set<Category> categories;
}


И мне надо связать его как-то с категорией
@Entity
public class Category {
   //...
}


При том при удалении продукта, не должны удаляться связанные с ним категории. И наоборот. При удалении категории продукты должны оставаться в БД, а Set должен сразу обновится (стать на одну категорию меньше). Как это реализовать?
  • Вопрос задан
  • 234 просмотра
Пригласить эксперта
Ответы на вопрос 1
jsdevel
@jsdevel
Java разработчик. Хороший парень, наверное.
@Table(name="parent")
class Parent {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;
 
    @OneToMany(mappedBy = "parent", cascade = CascadeType.ALL, fetch = FetchType.LAZY, orphanRemoval = true)
    private Set<Child> attachments = new HashSet<Child>();
    .....
}
 
@Entity
@Table(name="child)
class Child {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;
 
    @ManyToOne
    @JoinColumn(name = "parent_id", nullable = false)
    private Parent parent;
    ...
}
@Entity
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы