--- aliases: - jooq tags: - зрелость/🌱 date: - - 2024-03-03 zero-link: - "[[00 Java разработка]]" parents: linked: --- JOOQ (Java Object Oriented Querying) — это библиотека для Java, предназначенная для построения SQL-запросов с использованием API, основанного на шаблонах. Она позволяет разработчикам писать типобезопасные SQL-запросы с помощью Java-кода, что облегчает интеграцию базы данных в приложения Java. JOOQ поддерживает большинство реляционных баз данных, включая PostgreSQL, MySQL, Oracle, SQL Server и многие другие. **Основные особенности JOOQ:** - **Типобезопасность**: JOOQ генерирует код на основе схемы вашей базы данных, что позволяет использовать типобезопасные ссылки на таблицы, столбцы и т.д. Это уменьшает количество ошибок во время компиляции и упрощает рефакторинг. - **Интеграция с JDBC**: JOOQ работает поверх JDBC и может интегрироваться с любым пулом соединений или фреймворком управления транзакциями, совместимым с JDBC. - **Поддержка сложных SQL-запросов**: JOOQ поддерживает широкий спектр SQL-функциональности, включая сложные запросы, объединения, вложенные выборки, агрегатные функции и многое другое. - **Миграция схемы базы данных**: JOOQ может использоваться с инструментами миграции баз данных, такими как Flyway или Liquibase, для управления версиями схемы базы данных.