jinq 入門介紹-java中編寫資料庫查詢的簡單自然的方式

老马啸西风發表於2024-03-05

擴充閱讀

linq

querydsl

Jinq 是什麼?

Jinq為開發者提供了一種在Java中編寫資料庫查詢的簡單自然的方式。

你可以像處理儲存在集合中的普通Java物件一樣處理資料庫資料。你可以使用普通的Java命令遍歷和過濾它們,而你的所有程式碼都將自動轉化為最佳化的資料庫查詢。

最後,Java終於有了LINQ風格的查詢!

簡單自然的查詢。

使用Jinq,你可以使用簡單自然的Java語法編寫資料庫查詢。利用Java 8對函數語言程式設計的新支援,你可以使用與常規Java資料相同的程式碼來過濾和轉換資料庫中的資料。

例如,下面是一段使用Jinq從資料庫中獲取所有名為“Alice”的客戶的Java程式碼。

database.customerStream().where(
customer -> customer.getName().equals("Alice"));

程式碼執行流程如下:

從資料庫中獲取所有客戶的流
使用函式訪問每個客戶物件並進行過濾
只返回名為“Alice”的客戶

當在Java中執行此程式碼時,Jinq將自動將程式碼轉換為資料庫可以理解的SQL查詢。

PreparedStatement s = con.prepareStatement("SELECT * "

"FROM Customer C "
"WHERE C.Name = ? ");
s.setString(1, "Alice");
ResultSet rs = s.executeQuery();

更少的錯誤。更少的安全漏洞。更快的開發速度。

現有的資料庫查詢寫在字串內部。為了檢查錯誤,你必須啟動資料庫並執行查詢。這會減慢開發速度並導致更多錯誤。

Jinq查詢是普通的Java程式碼,Java編譯器將早期捕獲錯誤,加快開發速度。由於查詢被編寫為Java程式碼,因此不可能出現常見的SQL隱碼攻擊安全問題。

立即嘗試

Jinq是開源的。現在下載並按照入門指南學習更多關於其功能的資訊。

參考資料

https://www.jinq.org/

本文由部落格一文多發平臺 OpenWrite 釋出!

相關文章