Вона поєднує в собі активні записи, збережені процедури, розширені типи даних, складні SQL, typesafety, покоління вихідний код і Java в Вільний, інтуїтивно зрозумілий DSL.
jOOQ створює простий Java уявлення схеми бази даних.
Для кожної таблиці, уявлення, збережені процедури, перерахування, UDT є клас.
jOOQ реалізує простий у використанні активної записи шаблону. Це НЕ АБО-картографа, але забезпечує відображення 1: 1 між таблицями / поглядів і класів. Між колонами і членів.
Вона також дозволяє для письма компіляції типизированного запитів за допомогою вбудованого в DSL.
jOOQ підтримує всі стандартні функції мови SQL, включаючи, вкладених вибирає більш складні Союзу, приєднується, накладення
jOOQ дозволяє розробникам використовувати розширення фірми-постачальника, такі як збережені процедури, UDT-х, масиву і багато іншого
Особливості :.
- Загальні характеристики:
- об'єктно-орієнтованого моделювання SQL
- генерація коду SQL
- АБО карт
- типизированного 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 пакетних операцій, явного INSERT і UPDATE (на додаток до магазин ()), і явного звернення внутрішніх змінені прапори 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.
- Розщеплення великий НЕ В умовах поганого. Частини повинні бути пов'язані з I, не чи.
PrintImplements
Що нового у версії 2.2.0 :.
- Додана підтримка для бази даних CUBRID
Що нового у версії 2.1.0:
- можливість надання jOOQ з відображенням користувальницького типу .
- Є багато нових варіантів конфігурації виконання для управління SQL стиль SQL винесеного jOOQ.
- звернення NULL була покращена на користь використання jOOQ як SQL забудовника бібліотеки (наприклад, поряд з весни на виконання) NULL більше не вбудований, але пов'язані в якості змінної.
- jOOQ тепер підтримує моделювання реляційної операції ділення з використанням інтуїтивно синтаксис.
Що нового у версії 2.0.5:
- Виконати слухача і підтримки трасування SQL. jOOQ дозволяє підключити свої власні слухачів у виконанні запиту двигуна jOOQ на повідомлення про всіляких події
- Існуючі особливості SchemaMapping. Тепер вони є частиною поточної конфігурації
- Налаштування StatementType. Зазначте, чи виконати завод java.sql.PreparedStatements (змінні зв'язування) або статичні java.sql.Statements з вбудованими змінних.
Що нового у версії 2.0.0 :.
- API став більш статичний
- За умовчанням, jooq-Codegen тепер генерувати і Quot; динамічний & Quot; Метамодель на відміну від існуючої статичною.
- Винятки більше не перевіряється.
- Віконні функції тепер будується з лежачих в їх основі агрегатних функцій, як і в SQL.
Вимоги
- Java 1.6 або вище
Коментар не знайдено