關係型資料佔據企業資訊系統核心地位,而 Java 以物件導向著稱。物件與關係列之間的「阻抗失配」長期困擾開發者。IBM pureQuery 作為 Eclipse 為基礎的可插拔元件,透過**關係資料對象化**,將 SQL 與 Java 無縫整合於 IDE 編輯器,提供設計時編譯驗證、內容輔助、動態 SQL 執行與視覺化效能分析,顯著提升資料庫應用開發效能。本文系統介紹 pureQuery 核心概念、三大對象化模式 (DDO/QDO/ORM)、實戰場景與進階特性。
最常用模式:選擇表 → 自動生成 CRUD 物件模型。
@Table、@Column 註解映射。已有 SQL 語句 → 右鍵選單「Generate SQL Bean」 → 自動解析結果集元資料生成 Bean 類與介面。
已有 Bean 類 → 透過 @Table、@Column 註解映射至資料庫表 → 生成 CRUD 介面與實現。反向亦支援:由 Bean 生成 DDL 建表腳本。
環境需求:DB2 8.0+ (含 SAMPLE 資料庫)、Developer Workbench 9.5、pureQuery Plugin 1.0。
專案名 Personnel,建立 src/bin 目錄。
右鍵專案 → Add pureQuery Support → 勾選 Import required pureQuery JAR files into project → 選擇 SAMPLE 資料庫連線。

圖 1:為 Eclipse Java 專案啟用 pureQuery 支援

圖 2:Add pureQuery Support 精靈 - 常規選項

圖 3:選擇 SAMPLE 資料庫連線
Database Explorer 中右鍵 EMPLOYEE 表 → Generate pureQuery Code。

圖 4:包含 SAMPLE 資料庫所有構件的 Database Explorer

圖 5:右鍵選單生成 pureQuery 程式碼
Personnel/src,Bean 名 MyEmployee (生成 @Table(name="EMPLOYEE")),勾選生成介面、測試類、內聯範例類、JUnit 測試。@Column 註解)。
圖 6:pureQuery Code Generation 精靈

圖 7:定義 Bean 欄位屬性

圖 8:生成不同風格的 SQL 語句
| 檔案 | 說明 |
|---|---|
| MyEmployee.java | 主 Bean 類,欄位與表列 1:1 映射,含存取器 |
| MyEmployeeData.java | 註解介面,定義 CRUD 抽象方法 |
| MyEmployeeDataImpl.java | 介面預設實現,封裝所有 SQL (專案建構時生成) |
| MyEmployeeDataTest.java | 單元測試類,含 main 測試所有方法 |
| MyEmployeeInLineSample.java | 內聯 SQL 風格測試類 (可選生成) |
| SampleUtil.java | 工具包:取得連線、列印輸出等靜態方法 |

圖 9:表示 Employee 表的 Java Bean 類

圖 10:包含 CRUD 介面的 MyEmployeeData.java

圖 11:包含介面方法實現的類

圖 12:生成的單元測試類

圖 13:自動生成的內聯 SQL 測試類

圖 14:自動生成的工具類
MySQLEmployee → 完成生成 Bean。
圖 15:根據 SQL 語句建立 Bean

圖 16:指定 Bean 類名稱

圖 17:指定 Bean 欄位屬性
@Table(name="EMPLOYEE", schema="DB2ADMIN")。@Column(name="COL_NAME")。
圖 18:將 Bean 映射到關係表

圖 19:註解建立主機變數與表列映射
Selct) 並一鍵修正。
圖 20:SQL 語句完成

圖 21:內容輔助 - 實體名稱

圖 22:主機變數內容輔助

圖 23:快速修復 - 拼字錯誤
點擊 Bean 成員名稱 (類名/欄位名) 即可跳轉至 Database Explorer 對應表/欄位節點,雙向導航極致便利。

圖 24:點擊選擇 Bean 類成員名稱

圖 25:點擊跳轉至 Database Explorer
編輯器中右鍵 SQL → pureQuery Assist → Run SQL → 即時在 Data View 預覽結果集,自動回滾變更,零風險驗證查詢邏輯。

圖 26:設計時點擊運行 SQL

圖 27:Data View 顯示設計時執行 SQL 結果
pureQuery 以直觀的 GUI 驅動對象化流程,將關係存取無縫轉化為物件操作,結合 Eclipse 編輯器的 SQL/Java 深度融合 (驗證、輔助、動態執行、視覺化解釋),為資料庫中心應用開發提供了先進的生產力工具。它不僅優化開發效率,更透過設計時效能分析與靜態 SQL 執行能力,保障應用運行品質,是 Eclipse 生態中 Java 資料庫開發的里程碑式創新。