Встречается на собеседованиях • сегодня

Как связать сущности в JPA

В JPA сущности связываются через аннотации, определяющие тип отношений: 1. **@OneToOne** - связь один к одному ```java @Entity public class User { @OneToOne @JoinColumn(name = "address_id") private Address address; } ``` 2. **@OneToMany/@ManyToOne** - связь один ко многим/многие к одному ```java @Entity public class Order { @ManyToOne @JoinColumn(name = "customer_id") private Customer customer; } @Entity public class Customer { @OneToMany(mappedBy = "customer") private List orders; } ``` 3. **@ManyToMany** - связь многие ко многим ```java @Entity public class Student { @ManyToMany @JoinTable(name = "student_course", joinColumns = @JoinColumn(name = "student_id"), inverseJoinColumns = @JoinColumn(name = "course_id")) private Set courses; } ``` Ключевые параметры: - `mappedBy` - указывает поле-владельца связи - `cascade` - определяет каскадные операции - `fetch` - стратегия загрузки (EAGER/LAZY) - `orphanRemoval` - удаление "осиротевших" объектов Связи могут быть однонаправленными или двунаправленными. Для двунаправленных важно правильно настроить владельца связи через mappedBy.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы