Hibernate / JPA middle
Разница между get() и load() в Hibernate?
Ответ
get() — сразу идёт в БД и возвращает null если не найдено. load() — возвращает прокси, БД дёргается только при обращении к полям; если нет записи — ObjectNotFoundException.
Разбор: get() выполняет запрос немедленно и возвращает null, если сущности нет; load() возвращает ленивый прокси и обращается к БД лишь при доступе к полям, кидая ObjectNotFoundException для отсутствующей записи. Дистракторы меняют поведение методов местами или приписывают get() ленивость и исключение, которых у него нет.
Хочешь так же по своей компании — с вопросами по грейдам и задачами? Закажи гайд или забери свежее в Telegram.