Той съчетава активни записи, съхранени процедури, усъвършенствани типове данни, комплекс SQL, typesafety, поколение изходния код и Java в един перфектен, интуитивен DSL.
jOOQ генерира прост представителство Java на схемата на базата данни.
За всяка маса, изглед, съхранена процедура, ENUM, UDT е клас.
jOOQ изпълнява лесен за използване активен модел рекорд. Това не е OR-Mapper, но предоставя по 1: картографиране 1 между Маси / възгледи и класове. Между колоните и членове.
Той също така дава възможност за писане по време на компилация typesafe заявки с помощта на вградения си DSL.
jOOQ поддържа всички стандартни SQL езиковите функции, включително, вложени Избира по-сложен съюз, се присъединява, псевдонимите
jOOQ позволява на разработчиците на използването на специфични за доставчика разширения като съхранени процедури, UDT е, масива и много повече
<силни> Характеристики :.
- <Ли > Общи характеристики:
- Object Oriented SQL Modelling
- поколение SQL код
- OR-Mapping
- Typesafe SQL
- съхранена процедура и UDT подкрепа
- Поддържани бази данни:
- MySQL 1.5.41 и 5.5.8
- H2 1.3.154
- Oracle XE 10.2.0.1.0
- DB2 9.7
- PostgreSQL 9.0
- HSQLDB 2.0.0
- SQLite с интимен v056 JDBC драйвер
- Derby 10.7
- MSSQL
- Sybase
- Future подкрепа за:
- Ingres
- Firebird
Какво ново в тази версия:
- Factory е разделен на DSL (статично QueryPart строителството) и DSLContext (за изпълнение на заявка, & quot; прикрепена & quot; QueryPart строителство). Това значително подобрява цялостното преживяване DSL същевременно позволява по-фин контрол Изпълнител на жизнения цикъл.
- A ConnectionProvider е въведена като абстракция на Connection жизнения цикъл на JDBC. Самостоятелният връзка и сборни режими DataSource все още се поддържа, но сега можете да инжектирате свой собствен ConnectionProvider за по-голям контрол.
- Много подобрения в производителността са били осъществени в рамките на jOOQ API премахване повечето от режийни, причинени от jOOQ когато извличането на данни от JDBC
- A JDBC Mock API е добавен към ви помогне да създадете прости тестове за единица продукт за вашето приложение построена на върха на jOOQ.
- А стойности () конструктор вече се поддържа, и получена колона списъци до псевдоними таблици и колони с един замах.
- API за тип данни е значително опростена. Това позволи въвеждането на прецизност по време на работа, мащаб и информация за дължина.
- CRUD е подобрен през много повече операции CRUD партиди, изрично INSERT и UPDATE (в допълнение към съхраняване ()), както и изрично обработка на вътрешните променили знамена jOOQ му.
Какво ново във версия 2.6.1:
- Bad Postgres масив сериализация, когато & quot; или & # x5c; знаци се съдържат в String []
- Неефективните реализации на AbstractDataType.equals () и хеш-код ()
- Подобряване AbstractField.hashCode () и AbstractTable.hashCode () и други подобни, като тези две се наричат много често
- Неефективно призив към String.split () в StringUtils.toCamelCase () води до който не е незначителен ovrerhead представяне в трансформацията POJO призовава
- Bad SQL постановено при комбинирането на ORDER BY [някаква функция] с LIMIT .. Отместване в DB2, SQL Server
- Bad SQL предоставена за OVER (ORDER BY [някаква функция]) за SQL Server и Sybase
- проблем с безопасността Тема в org.jooq.impl.FieldList
- Bad позоваване на org.jooq.debug. [Impl] .DebugListener в употреба
- Bad код, генериран при наличие на едно и също име на маса в няколко схеми в SQL Server
Какво ново във версия 2.5.0:
- Премахване на отливане на обвързване ценности в Ingres
- Simulate RPAD и LPAD в SQLite
- Добави подкрепа за Oracle Функции за текст
- Добави опция за генериране неизменими pojos
- Поддръжка & quot; оптимистично заключване & quot; в UpdatableRecord.store () и изтриване ()
- Generate fetchBy [ColumnName] методи в генерирани класове DAO
- Добавете малко Javadoc да документира разликата между помощта на Фабрика с връзка или с DataSource
- Добави javax.validation API за пълно доставяне
- Добави Factory.connectByRoot (поле & # x3c;? & # X3e;) в подкрепа на псевдо колона Oracle CONNECT_BY_ROOT
- Добави Factory.condition (String, QueryPart ...) подобно на Factory.field (String, QueryPart ...)
- Добави подкрепа за ORDER братя и сестри на Oracle BY клауза, в комбинация с CONNECT BY
- Добави липсва конструктори, приемащи DataSource да диалектни-конкретни фабрики
- Генериране липсва конструктори, приемащи DataSource в схеми специфични фабрики
- Симулира REPEAT () в SQLite
Какво ново във версия 2.4.0:
- Добавено Result.intoResultSet () да приключи резултат в JDBC ResultSet
- Избягвайте JDBC бягство синтаксис за дата / час литерали
- Генериране класове DAO и интерфейси за POJOs
- Document жизнения цикъл на един ExecuteListener в Javadoc
- Добавена е поддръжка за Postgres & quot; всеки & quot; тип данни (с кавички!). Това изглежда картата и да java.lang.Object
- Поддръжка нечувствително имена на схеми в генериране на код
- добавили някои WARN ниво сеч, когато източник-генератора на код не генерира никакви артефакти
- Добавено Field.likeIgnoreCase (), за да подкрепи Ilike оператор Postgres "
- Добавено Factory (DataSource) и подобни конструктори
- Добавено Factory.batchStore (Collection & # x3c ;? простира UpdatableRecord & # x3c;? & # X3e; & # x3e;) за удобство
- Добавено DataType.convert (Object ...) и DataType.convert (Collection & # x3c;? & # X3e;) за удобство
- Добавено org.jooq.Name Factory.name (String) за конструиране на QueryParts, които са избягали според Settings.getRenderNameStyle ()
- Добавено Factory.fetch (String, QueryPart ...) и Factory.execute (String, QueryPart ...) и други подобни методи за подпомагане на произволни QueryParts в обикновен SQL
Какво ново във версия 2.3.2:
- Определя:
- въпрос за ефективността с AbstractDataType.convert (Object). Избягвайте реализации, когато те са очевидно ненужни.
- Генериране на някаква смислена Javadoc в генерираните [схема-име] Фабрика класове.
- добавени нови редове, за да генерира Javadoc когато е уместно
- Потребителски генератор стратегия на () се нарича с Mode == рекорд за маси.
- Неефективно клониране на настройките по подразбиране, използвайки JAXB unmarshalling води до който не е незначителен общите режийни разходи. Използвайте сериализация вместо (кратко на полезен XJC клонинг плъгин).
- изчакват SQLDialect в AbstractDatabase силно подобрява производителността генериране на код.
- Compilation грешка, когато SQL Server съхраняват процедура има параметър с име & quot; стойност & quot;.
- Bad синтаксис за SELECT / * + намек * / DISTINCT ... в Oracle.
- Разделяне на големи НЕ ПО условия не е наред. Частите трябва да бъдат свързани с И, не с OR.
PrintImplements
Какво ново във версия 2.2.0:.
- Добавена е поддръжка за базата данни на CUBRID
Какво ново във версия 2.1.0:
- възможността за предоставяне на jOOQ с потребителски тип картографиране .
- Има много нови опции за конфигуриране по време на работа, за да контролират SQL стила на SQL, предоставяни от jOOQ.
- Обработката на NULL е подобрен в полза на използването на jOOQ като SQL строител библиотека (например заедно с Пролет за изпълнение) NULL вече не inlined, но обвързани като променлива.
- jOOQ вече поддържа симулация на релационни операцията по разделянето с помощта на интуитивен синтаксис.
Какво ново във версия 2.0.5:
- Execute слушател и SQL проследяване подкрепа. jOOQ ви позволява да свържете вашите собствени слушателите в двигателя за изпълнение на заявка jOOQ да бъдат уведомени за всички видове събития
- Съществуващите функции SchemaMapping. Сега те са част от конфигурацията на изпълнение
- Настройки StatementType. Посочете дали Factory трябва да изпълни java.sql.PreparedStatements (с променливи за обвързване) или статични java.sql.Statements с inlined променливи.
Какво ново във версия 2.0.0:.
- The API става по-статична
- По подразбиране jooq-Codegen сега ще генерира & quot; динамична & quot; мета модел за разлика от съществуващите статични едно.
- изключения, вече не се проверява.
- прозоречни функции вече са изградени от техните базови обобщаващи функции точно като в SQL.
<силни> Изисквания
- Java 1.6 или по-висока
Коментари не е намерена