序言
新接触的项目中存在的大量的原生JDBC的代码,满屏幕都是PrepareStatement 和ResultSet,
以及各种关闭资源的语句。
所以有了用开源框架去重写的想法,然后就找到了JOOQ。
JOOQ是什么?
JOOQ是一款ORM框架。
JOOQ的作用以及对比其他ORM框架有哪些优点?
在官方的使用手册中,将其和JPA、LINQ、JDBC分别作了比较,
通过使用之后说一下JOOQ和JDBC的对比优点:
1.JOOQ 写DDL语句就像是直接写Java代码,非常方便。
2.不需要拼接各种字符串来拼接SQL语句。(拼接SQL多痛苦在用JDBC的时候经历过,少一个空格都会折磨死)
3.不用去写各种ResultSet、PrepareStatement 有关的代码
4.同样支持字符串拼接SQL
5.支持插件自动生产实体类代码
应用举例:
//查询
DSLContext create = DSL.using(connection); Result<Person> res = create.selectFrom(PersonMeta.PERSON) .where(PersonMeta.PERSON.NAME.eq("zhangsan")) .fetch();
查询支持各种join语句。
总结
JOOQ支持事务,支持市面上常用的数据库。
这里的举例只举了一个简单的查询,后续会用一个SpringBoot + Maven + MySQL的一个项目
按照环境配置,配置Maven 插件 jooq-generator,实际应用三方面来说说JOOQ如何使用。