Hibernate
Доминирующая ORM в Java — Гэвин Кинг, 2001. Стандартизирована как JPA (Java Persistence API). Используется по умолчанию в Spring Boot и JEE.
Располагается между Java-объектами и реляционной БД: session.save(user) превращается в SQL INSERT. Язык запросов — HQL/JPQL (похож на SQL). Известные ловушки: проблема N+1 (цикл порождает запрос на каждой итерации) и исключение ленивой загрузки вне сессии. Основные конкуренты: jOOQ (типобезопасный построитель SQL), MyBatis (ближе к явному SQL), Quarkus/Hibernate Reactive (современный вариант). Позже Гэвин Кинг стал архитектором языка Ceylon и работал в Red Hat.