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

Будут ли проблемы при прямой передачи в @RestController модели со связью ManyToOne

Если передавать модель с `@ManyToOne` связью напрямую в `@RestController`, могут возникнуть проблемы: 1. **Циклические зависимости** – если связанные сущности ссылаются друг на друга (например, `Parent` ↔ `Child`), Jackson будет пытаться сериализовать их бесконечно, что приведёт к `StackOverflowError`. 2. **Ленивая загрузка** – если связь `FetchType.LAZY`, а сериализация происходит вне транзакции, получим `LazyInitializationException`. **Решение:** - Использовать DTO вместо сущностей. - Аннотировать поля `@JsonIgnore` или `@JsonManagedReference`/`@JsonBackReference`. **Пример:** ```java @Entity public class Order { @Id private Long id; @ManyToOne @JsonBackReference // предотвращает циклическую сериализацию private Customer customer; } @Entity public class Customer { @Id private Long id; @OneToMany(mappedBy = "customer") @JsonManagedReference private List orders; } ```
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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