它结合的活动记录,存储过程,先进的数据类型,复杂的SQL,类型安全,源代码生成和Java的流畅,直观的DSL。
jOOQ生成数据库模式的一个简单的Java表示。
对于每一个表,视图,存储过程,枚举,UDT是一类。
jOOQ实现了一个易于使用的活动记录模式。它不是一个OR映射器,但提供了一个1:表/视图和类之间的1映射。列之间和成员。
它还允许写入编译时使用类型安全的内置DSL查询。
jOOQ支持所有标准的SQL语言功能,包括更复杂的联盟,嵌套的选用,连接,走样
jOOQ允许开发人员使用供应商特定的扩展,如存储过程,用户定义类型的,数组等等
功能:
- 一般特点:
- 在面向对象建模SQL
- 在SQL代码生成
- OR-映射
- 类型安全的SQL
- 存储过程和UDT支持
- 支持的数据库:
- 的MySQL 5.1.41和5.5.8
- H2 1.3.154
- 在甲骨文XE 10.2.0.1.0
- 在DB2 9.7
- 的PostgreSQL 9.0
- HSQLDB 2.0.0
- 的SQLite与非官方的JDBC驱动程序v056
- 德比10.7
- MSSQL
- 的Sybase
- 对于未来的支持:
- 安格尔
- 火鸟
什么在此版本中是新的:
- 在厂已经分成DSL(静态QueryPart建) DSLContext(查询执行,"连接" QueryPart建设)。这大大提高了整体的DSL体验,同时允许更细粒度的执行人生命周期的控制。
- 系统的ConnectionProvider已经出台的JDBC连接生命周期的抽象。独立的连接和数据源池模式仍然支持,但你现在可以进行更多的控制注入自己的ConnectionProvider。
- 在很多性能方面的改进已在jOOQ API消除大部分由jOOQ获取从JDBC数据时引起的开销内实施
- 在一个JDBC API模拟已经加入到帮助你建立在jOOQ之上的应用程序中创建简单的单元测试。
- a值()构造函数现在支持,并一气呵成派生列列表别名表和列。
- 的数据类型的API已经大大简化。这使得引进的精密运行时间,规模和长度的信息。
- CRUD已经通过更多的CRUD批量操作,明确INSERT和UPDATE(除存储()),以及jOOQ的内部改变标志明确的处理改善。
什么版本2.6.1是新的:
- 在坏Postgres的数组序列,当"或\字符都包含在一个字符串[]
- AbstractDataType.equals的低效实现()和hashCode()
- 在提高AbstractField.hashCode()和AbstractTable.hashCode()和类似的,因为这两个被称为经常
- 来String.split()在StringUtils.toCamelCase()调用低效导致了不可忽略的性能ovrerhead POJO中呼吁转变
- 在糟糕的SQL相结合时,ORDER BY [某些功能]与LIMIT呈现..抵消了DB2,SQL服务器
- 糟糕的SQL为SQL Server和Sybase呈现为OVER(ORDER BY [某些功能])
- 在org.jooq.impl.FieldList线程安全问题
- 坏参考org.jooq.debug。[IMPL] .DebugListener在手动
- 坏代码时相同的表名在SQL Server 多种模式存在产生
在什么版本2.5.0新是:
- 在安格尔删除绑定值铸造李>
- 模拟RPAD和LPAD SQLite中
- 将支持Oracle Text的功能
- 将选项生成不变的POJO
- 支持"乐观锁"在UpdatableRecord.store()和delete()
- 生成fetchBy [的ColumnName]生成的DAO类的方法
- 添加一些的Javadoc文件使用工厂与连接或数据源之间的差异
- 将javax.validation API来完全交付
- 将Factory.connectByRoot(现场<>),以支持Oracle CONNECT_BY_ROOT伪列
- 将Factory.condition(字符串,QueryPart ...)类似Factory.field(字符串,QueryPart ...)
- 将支持甲骨文的ORDER SIBLINGS BY子句,结合CONNECT BY
- 添加缺少的建设者采取的DataSource方言特有的工厂
- 生成缺少构造以数据源的模式,具体工厂
- 模拟REPEAT()SQLite中
在什么版本2.4.0新是:
- 在新增Result.intoResultSet()来包装一个结果在一个JDBC结果
- 避免的日期/时间文字JDBC转义语法
- 生成DAO类和接口的POJO
- 在文档中的ExecuteListener的在Javadoc 的生命周期
- 新增对Postgres的&QUOT支持;任何"数据类型(带引号!)。这似乎很好地映射到的java.lang.Object
- 在代码生成支持不区分大小写的架构名称
- 在增加了一些WARN级记录时,源代码生成器不产生任何文物
- 新增Field.likeIgnoreCase(),以支持Postgres的ILIKE操作符
- 新增厂(数据源)和类似的构造
- 新增Factory.batchStore(集合&#X3C ;?延伸UpdatableRecord<>>)为了方便
- 新增DataType.convert(对象...)和DataType.convert(集合<>)为了方便
- 新增org.jooq.Name Factory.name(字符串)去构造一个按照逃到Settings.getRenderNameStyle() QueryParts
- 新增Factory.fetch(字符串,QueryPart ...)和Factory.execute(字符串,QueryPart ...)和类似的方法来支持任意QueryParts在普通的SQL
什么2.3.2版本新:
- 修正:
- 与AbstractDataType.convert(对象)的性能问题。避免转换时,他们显然是不必要的。
- 生成一些有意义的Javadoc到生成[架构名]工厂类。
- 添加换行符生成的Javadoc酌情
- 在自定义生成战略的printImplements()被调用模式==记录表。
- 使用JAXB解组默认设置克隆效率低下导致不可忽略的整体开销。使用序列代替(短有用的XJC克隆插件)。
- 在缓存中SQLDIALECT严重AbstractDatabase提高代码生成性能。
- 编译错误,当一个SQL Server存储过程有一个名为参数"价值"
- 坏语法SELECT / * + *提示/ DISTINCT ...在Oracle中。
- 的大分光NOT IN条件是错误的。该部分应和,不使用OR进行连接。
在什么版本2.2.0新是:
- 增加了对CUBRID数据库支持李>
什么是2.1.0版本,新的:
- 在提供jOOQ具有自定义类型映射的可能性。
- 有很多新的运行时配置选项来控制SQL由jOOQ呈现的SQL风格。
- NULL的处理已倾向于使用jOOQ作为一个SQL生成器库(例如随着春季执行)NULL不再是内联的得到了改善,但绑定为一个变量。
- jOOQ现在支持模拟使用直观的语法关系除法运算。
什么版本2.0.5是新的:
- 执行监听器和SQL跟踪支持。 jOOQ它允许你将自己的听众变成jOOQ的查询执行引擎的各种事件的通知
- 在现有SchemaMapping功能。他们现在的运行时配置的一部分
- StatementType设置。指定工厂是否应该执行java.sql.PreparedStatements(使用绑定变量)或静态java.sql.Statements与内嵌的变量。
在什么版本2.0.0是新的:
- 在该API变得更加静态
- 在默认情况下,jooq,代码生成现在产生一个"动态"相对于现有的静态一个元模型。
- 例外不再检查。
- 在窗口的功能现在从构建其基础聚合函数就像在SQL。
要求:
- 在的Java 1.6或更高版本
评论没有发现