Когда JDBC/R2DBC предпочтительнее JPA или MyBatis на уровне проекта?

JDBC подходит для явного блокирующего SQL с полным контролем запросов, R2DBC — для неблокирующего доступа в реактивном контуре. JPA и MyBatis решают задачи более высокого уровня и не являются прямыми аналогами драйвера.

Короткий ответ

Что ответить на собеседовании

JDBC подходит для явного блокирующего SQL с полным контролем запросов, R2DBC — для неблокирующего доступа в реактивном контуре. JPA и MyBatis решают задачи более высокого уровня и не являются прямыми аналогами драйвера.

Подробный разбор

Ответ с пояснениями

JDBC подходит для явного блокирующего SQL с полным контролем запросов, R2DBC — для неблокирующего доступа в реактивном контуре. JPA и MyBatis решают задачи более высокого уровня и не являются прямыми аналогами драйвера.

JPA удобна для управления графом сущностей, MyBatis — для маппинга явного SQL, обычно поверх JDBC. При сложных проекциях и небольшом доменном слое ORM может быть избыточна. R2DBC выбирают при совместимом драйвере и сквозной неблокирующей архитектуре, а не как автоматическое ускорение БД. Учитывают транзакции, tooling, компетенции команды и стоимость ручного маппинга.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее