Она сочетает в себе активные записи, хранимые процедуры, расширенные типы данных, сложные SQL, typesafety, поколения исходный код и Java в Свободный, интуитивно понятный DSL.
jOOQ создает простой Java представление схемы базы данных.
Для каждой таблицы, представления, хранимые процедуры, перечисления, UDT класс.
jOOQ реализует простой в использовании активной записи шаблона. Это не ИЛИ-картографа, но обеспечивает отображение 1: 1 между таблицами / взглядов и классов. Между колоннами и членов.
Она также позволяет для письма компиляции типизированного запросов с помощью встроенной в DSL.
jOOQ поддерживает все стандартные функции языка SQL в том числе, вложенных выбирает более сложные Союза, присоединяется, наложения
jOOQ позволяет разработчикам использовать расширения фирмы-поставщика, такие как хранимые процедуры, UDT-х, массива и многое другое
Особенности :.
- Общие характеристики:
- объектно-ориентированного моделирования SQL
- генерация кода SQL
- OR-Mapping
- типизированного SQL
- Хранимая процедура и UDT поддержка
- Поддерживаемые базы данных:
- MySQL 5.1.41 и 5.5.8
- Н2 1.3.154
- Oracle XE 10.2.0.1.0
- DB2 9.7
- PostgreSQL 9.0
- HSQLDB 2.0.0
- SQLite с Неофициальная v056 драйвера JDBC
- Дерби 10.7
- MSSQL
- Sybase
- Будущее поддержка:
- Энгр
- Жар-птица
Что нового В этом выпуске:
- Завод был разделен на DSL (статические строительство QueryPart) и DSLContext (выполнения запроса, и Quot; прилагается & Quot; QueryPart строительство). Это значительно улучшает общее впечатление DSL, позволяя для более мелкозернистой контроля Исполнитель жизненным циклом.
- а ConnectionProvider был введен в качестве абстракции Подключение жизненного цикла JDBC. Автономный Подключение и объединенные режимы DataSource по-прежнему поддерживаются, но теперь вы можете ввести свой собственный ConnectionProvider для большего контроля.
- Много улучшений производительности были реализованы в jOOQ API удаления большей части накладных расходов, вызванных jOOQ при выборке данных из JDBC
- а JDBC API Мок был добавлен, чтобы помочь вам создать простые модульные тесты для вашего приложения, построенного на вершине jOOQ.
- ценит () конструктор теперь поддерживается и получены списки столбцов псевдоним таблицы и столбцы на одном дыхании.
- Тип данных API была значительно упрощена. Это позволило внедрение точности выполнения, масштаба и информации о длине.
- CRUD была улучшена по многим более CRUD пакетных операций, явного вставки и обновления (в дополнение к магазин ()), и явного обращения внутренних изменены флаги jOOQ в.
Что нового в версии 2.6.1:
- Плохие Postgres массив последовательную, когда и Quot; или & # x5c; символы, содержащиеся в строке []
- Неэффективные реализации AbstractDataType.equals () и хэш-код ()
- Улучшение AbstractField.hashCode () и AbstractTable.hashCode () и подобное, а эти двое называют очень часто
- Неэффективное вызов String.split () в StringUtils.toCamelCase () приводит к не-незначительным ovrerhead производительности в преобразовании POJO вызывает
- Бад SQL оказана при объединении ORDER BY [какой-функции] с пределом .. смещение в DB2, SQL Server
- Бад SQL оказана в течение более (ORDER BY [какой-функции]) для SQL Server и Sybase
- вопрос безопасности потоков в org.jooq.impl.FieldList
- Бад ссылка на org.jooq.debug. [осущ] .DebugListener в ручном
- Бад код генерируется, когда же имя таблицы существует в нескольких схемах в SQL Server
Что нового в версии 2.5.0:
- Удалить кастинг значения для связки в Ingres
- Моделирование RPAD и LPAD в SQLite
- Добавлена поддержка функций Oracle Text
- Добавлена опция для создания объектов POJO непреложные
- Поддержка & Quot; оптимистично замок и Quot; в UpdatableRecord.store () и Delete ()
- Создать fetchBy [ColumnName] методы в созданных классов DAO
- Добавьте немного Javadoc для документирования разницу между использованием завод с подключением или с DataSource
- Добавить javax.validation API для полной результатом работы
- Добавить Factory.connectByRoot (поле & # x3c;? & # x3e;) для поддержки псевдо столбец Oracle CONNECT_BY_ROOT
- Добавить Factory.condition (String, QueryPart ...), похожий на Factory.field (String, QueryPart ...)
- Добавлена поддержка Oracle Приказ братьев и сестер пунктом, в сочетании с CONNECT BY
- Добавить хватает конструкторов, принимающих DataSource для диалектных специфических заводов
- Создать хватает конструкторов, принимающих DataSource в схемы конкретных заводов
- Имитация REPEAT () в SQLite
Что нового в версии 2.4.0:
- Добавлена Result.intoResultSet (), чтобы обернуть результат в JDBC ResultSet
- Избегайте JDBC побег синтаксис для даты / времени литералов
- Создание классов DAO и интерфейсы для POJOs
- Документ жизненный цикл из ExecuteListener в Javadoc
- Добавлена поддержка Postgres и Quot; любое & Quot; Тип данных (с кавычками!). Это, кажется, хорошо согласуются с java.lang.Object
- имена схем поддержки без учета регистра в генерации кода
- Добавлена некоторые WARN уровня ведения журнала, когда генератор исходный код не генерирует никаких артефактов
- Добавлена Field.likeIgnoreCase () для поддержки оператора ILIKE Postgres '
- Добавлена завод (DataSource) и аналогичные конструкторы
- Добавлена Factory.batchStore (Собрание & # x3c ;? распространяется UpdatableRecord & # x3c;? & #; & x3e # x3e;) для удобства
- Добавлена DataType.convert (Объект ...) и DataType.convert (Собрание & # x3c;? & # x3e;) для удобства
- Добавлена org.jooq.Name Factory.name (String), чтобы contruct QueryParts, которые бежали в соответствии с Settings.getRenderNameStyle ()
- Добавлена Factory.fetch (String, QueryPart ...) и Factory.execute (String, QueryPart ...) и аналогичные методы для поддержки произвольных QueryParts в простом SQL
Что нового в версии 2.3.2:
- Исправления:
- вопрос производительности с AbstractDataType.convert (Object). Избегайте преобразования, когда они, очевидно, не нужны.
- Создание некоторые значимые Javadoc в сгенерированных [имя-схемы] Factory классов.
- Добавлена разрывы строк в генерируемый Javadoc в соответствующих случаях
- пользовательского стратегии генератора () называется с режимом == ЗАПИСЬ для таблиц.
- Неэффективное клонирование настроек по умолчанию с использованием JAXB демаршаллинг приводит к не-незначительной общей накладных расходов. Используйте сериализацию вместо (короткий полезного XJC плагина клона).
- Кэширование SQLDialect в AbstractDatabase сильно повышает производительность генерации кода.
- Ошибка компиляции при SQL Server хранимая процедура имеет параметр с именем & Quot; значение & Quot;.
- Бад синтаксис ВЫБОР / + намек * / DISTINCT ... в Oracle.
- Расщепление большой НЕ В условиях плохого. Части должны быть связаны с И, не или.
printImplements
Что нового в версии 2.2.0:.
- Добавлена поддержка для базы данных CUBRID
Что нового в версии 2.1.0:
- Возможность предоставления jOOQ с отображением пользовательского типа .
- Есть много новых опций конфигурации выполнения для управления SQL SQL стиль вынесенного jOOQ.
- Обработка NULL была улучшена в пользу использования jOOQ как SQL застройщика библиотеки (например, наряду с весны на выполнение) NULL больше не встроен, но связаны в качестве переменной.
- jOOQ теперь поддерживает симуляцию реляционной операции деления с использованием интуитивно понятный синтаксис.
Что нового в версии 2.0.5:
- Execute слушателя и поддержки трассировки SQL. jOOQ позволяет подключить свои собственные слушателей в исполнении запроса двигателя jOOQ на уведомление о всевозможных событиях
- Существующие особенности SchemaMapping. Теперь они являются частью текущей конфигурации
- Настройки StatementType. Укажите, следует ли выполнить завод java.sql.PreparedStatements (переменные связывания) или статические java.sql.Statements с встраиваемыми переменных.
Что нового в версии 2.0.0:.
- В API стал более статичен
- По умолчанию, jooq-Codegen теперь генерировать и Quot; динамический & Quot; метамодель, в отличие от существующей статической.
- Исключения больше не проверяется.
- Оконные функции теперь строится из лежащих в их основе агрегатных функций, как и в SQL.
Требования
- Java 1.6 или выше
Комментарии не найдены