序言
新接觸的項目中存在的大量的原生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如何使用。