| |||||
It combines active records, stored procedures, advanced data types, complex SQL, typesafety, source code generation and Java in a fluent, intuitive DSL.
jOOQ generates a simple Java representation of the database schema.
For every table, view, stored procedure, enum, UDT is a class.
jOOQ implements an easy-to-use active record pattern. It is NOT an OR-mapper, but provides a 1:1 mapping between tables/views and classes. Between columns and members.
It also allows for writing compile-time typesafe querying using its built-in DSL.
jOOQ supports all standard SQL language features including the more complex UNION's, nested SELECTs, JOINs, aliasing
jOOQ allows developers the use of vendor-specific extensions such as stored procedures, UDT's, ARRAY's and many more.
Here are some key features of "jOOQ":
General features:
· Object Oriented SQL Modelling
· SQL code generation
· OR-Mapping
· Typesafe SQL
· Stored procedure and UDT support
Supported databases:
· MySQL 5.1.41 and 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 with inofficial JDBC driver v056
· Derby 10.7
· MSSQL
· Sybase
Future support for:
· Ingres
· Firebird
Requirements:
· Java 1.6 or higher
What's New in This Release: [ read full changelog ]
Fixes:
· Performance issue with AbstractDataType.convert(Object). Avoid conversions when they're obviously unneeded.
· Generate some meaningful Javadoc into the generated [schema-name]Factory classes.
· Added line breaks to generated Javadoc where appropriate
· Custom generator strategy's printImplements() is called with Mode == RECORD for tables.
· Inefficient cloning of default settings using JAXB unmarshalling leads to non-negligible overall overhead. Use serialisation instead (short of a useful XJC clone plugin).
· Caching SQLDialect in AbstractDatabase heavily improves code generation performance.
· Compilation error when a SQL Server stored procedure has a parameter named "value".
· Bad syntax for SELECT /*+hint*/ DISTINCT ... in Oracle.
· Splitting of large NOT IN conditions is wrong. The parts should be connected with AND, not with OR.

Via: jOOQ 2.3.2






0 Comment:
Post a Comment