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

Как решал проблему N+1 в последнем проекте

Проблему N+1 решал через eager loading с помощью JOIN FETCH в Hibernate. Например, при загрузке сущности Order с коллекцией OrderItems: ```java @Query("SELECT o FROM Order o JOIN FETCH o.items WHERE o.id = :id") Order findOrderWithItems(@Param("id") Long id); ``` Для коллекций использовал @BatchSize: ```java @Entity public class Order { @BatchSize(size = 20) @OneToMany(mappedBy = "order") private List items; } ``` Также применял EntityGraph для сложных запросов. В Spring Data JPA это выглядит так: ```java @EntityGraph(attributePaths = {"items", "customer"}) Order findWithItemsAndCustomerById(Long id); ``` Для read-only операций иногда использовал DTO проекции с одним запросом вместо загрузки сущностей.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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