Встречается на собеседованиях • сегодня
Как работают взаимосвязи в Entity
В JPA (Java Persistence API) взаимосвязи между сущностями определяются аннотациями:
1. **@OneToOne** - связь один к одному. Например, у User может быть один Passport:
```java
@Entity
public class User {
@Id Long id;
@OneToOne
@JoinColumn(name = "passport_id")
private Passport passport;
}
```
2. **@OneToMany/ManyToOne** - связь один ко многим. Например, у Department много Employee:
```java
@Entity
public class Department {
@Id Long id;
@OneToMany(mappedBy = "department")
private List employees;
}
@Entity
public class Employee {
@Id Long id;
@ManyToOne
@JoinColumn(name = "department_id")
private Department department;
}
```
3. **@ManyToMany** - связь многие ко многим. Используется промежуточная таблица:
```java
@Entity
public class Student {
@Id Long id;
@ManyToMany
@JoinTable(name = "student_course",
joinColumns = @JoinColumn(name = "student_id"),
inverseJoinColumns = @JoinColumn(name = "course_id"))
private Set courses;
}
```
Ключевые параметры:
- `mappedBy` - указывает владельца связи
- `cascade` - определяет каскадные операции
- `fetch` - стратегия загрузки (EAGER/LAZY)

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы