Java 開發者熟知 JDBC 開發的繁瑣:建立資料存取物件層、處理 CRUD SQL、來回切換 Java 與資料庫工具。ORM 框架雖簡化開發,卻犧牲 SQL 控制權,導致效能調優與問題診斷困難。IBM pureQuery(前身 JLINQ)應運而生,作為 IBM Data Studio 組件,提供開發工具、API 與高階執行庫,涵蓋開發、部署、管理、治理全生命週期。
pureQuery 提供具備 SQL 感知的 Java 編輯器,支援設計時編譯、智慧內容輔助、語法著色、即時錯誤標記(如同 Java 程式碼)。開發者可在 Eclipse 中直接測試 SQL,縮短編輯-編譯-除錯週期,大幅提升生產力。
傳統上 JDBC 僅支援動態 SQL,SQLJ 提供靜態 SQL 需重寫存取層。pureQuery 同一套 API 同時支援兩者,部署時透過執行期配置切換,無需修改程式碼。靜態 SQL 優勢:
pureQuery 以標準 SQL 查詢記憶體中非受管物件(Heap 上的原始物件),並可與資料庫查詢結果聯結。範例:
Department[] depts = ...;
Employee[] emps = ...;
Data qoc = DataFactory.getData();
List<Employee> e = data.queryList(
"select e.firstname, e.lastname, e.empno, e.workdept from " +
"?test.Employee as e, ?test.Department as d where e.workdept = d.deptno",
Employee.class, emps, depts);
適用於快取固定資料集(如州代碼查詢表),避免不必要的資料庫往返。
employee = db.queryFirst("SELECT ... FROM EMP WHERE NAME=:name", Employee.class, name);工具支援自動產生基於 Java 集合的表、視圖、預存程序結果集對應。
IBM Data Studio 另一組件 Data Web Services,支援拖拉操作將 SQL/XQuery/預存程序發布為 SOAP/REST 端點,自動產生 WSDL,部署至既有 Java 應用伺服器。特色包括:
加速 SOA 採納,讓非 SQL 專家也能快速建立高效能資料服務。
pureQuery 以「純淨而簡單」的程式設計模型,在 JDBC 之上薄薄一層,卻封裝了批次更新、資料庫專用 API 等最佳實務,執行速度優於原生 JDBC。結合 Data Web Services,IBM Data Studio 為 Java 資料存取開發帶來前所未有的效率與治理能力。