整合使用jOOQ面向对象查询
一. jOOQ簡介
1. jOOQ概述
jOOQ(Java Object Oriented Querying): 翻譯成中文是 Java面向?qū)ο蟛樵?的意思。
jOOQ是Data Geekery提供的基于Java的輕量級數(shù)據(jù)庫訪問庫,通過特定的語法將類以及數(shù)據(jù)庫模型翻譯成對應的SQL語句實現(xiàn)實體與關(guān)系的映射,在數(shù)據(jù)庫與類之間建立起一一對應關(guān)系,也可以讓我們通過它的流式API構(gòu)建出類型安全的SQL查詢。
jOOQ是一個基于Java編寫SQL的工具包,具有簡單、輕量、函數(shù)式編程寫SQL等獨特優(yōu)勢,非常適合敏捷快速迭代開發(fā)。
jOOQ不管是商業(yè)版,還是開源版本都能跟Spring Boot一塊使用。
2. jOOQ的特點:
- 繼承了ORM框架的優(yōu)點,簡單操作,類型安全等。jOOQ將SQL建模為內(nèi)部DSL,使用Java編譯器編譯SQL語法,元數(shù)據(jù)和數(shù)據(jù)類型。
- jOOQ會根據(jù)數(shù)據(jù)庫的元數(shù)據(jù)來生成對應的實體類,省略了原有開發(fā)中不斷修改對應數(shù)據(jù)庫的類名,屬性名。
- jOOQ允許運行時配置數(shù)據(jù)庫模式,且支持行級別的安全。
- 支持聯(lián)合查詢,多表查詢,存儲過程等數(shù)據(jù)庫高級操作。
二. Spring Boot中整合jOOQ
1.創(chuàng)建Web項目
我們按照之前的經(jīng)驗,創(chuàng)建一個web程序,并將之改造成Spring Boot項目,具體過程略。
2. 添加依賴和插件
3. 創(chuàng)建JooqConfig配置文件
在resource目錄下,創(chuàng)建一個JooqConfig.xml配置文件,用來進行關(guān)聯(lián)數(shù)據(jù)庫,根據(jù)數(shù)據(jù)庫進行逆向生成對應的Java代碼。
4. mvn執(zhí)行逆向工程
在lifecycle中執(zhí)行compile命令,就可以自動執(zhí)行逆向工程的命令了。
只要JooqConfig.xml配置文件沒問題,并且依賴包都完整下載,就可以逆向工程執(zhí)行成功。
逆向工程執(zhí)行完畢后,我們就可以看到如下效果,發(fā)現(xiàn)自動生成了很多的Java代碼,這些Java代碼就是根據(jù)我們數(shù)據(jù)庫中的表,生成的對應的Java代碼。
對應的數(shù)據(jù)庫表:
5. 配置application.yml文件
主要是配置關(guān)聯(lián)我們的數(shù)據(jù)庫。
6. 創(chuàng)建DataSource配置類
7.創(chuàng)建Service層代碼
創(chuàng)建UserService接口
創(chuàng)建UserServiceImpl類
8. 創(chuàng)建Controller測試接口
9. 創(chuàng)建入口類
10.總的項目結(jié)構(gòu)
11.測試接口
我們在瀏覽器中進行測試。
可以看到我們的接口功能已經(jīng)實現(xiàn)了,其他方法沒有一一測試,感興趣的朋友可以自己試驗一下。
總結(jié)
以上是生活随笔為你收集整理的整合使用jOOQ面向对象查询的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 安装VMware虚拟机以及Ubuntu,
- 下一篇: 【面经】腾讯U3d面试面经 帧同步方向(