跳轉到內容

Java 持久化/Oracle

來自華夏公益教科書,開放書籍,構建開放世界

The Oracle 資料庫是最受歡迎且最強大的商業資料庫之一。

Oracle 是一種商業授權資料庫,但可以免費下載並在 OTN 許可下用於開發或測試。

Oracle 支援所有 JPA 功能,除了 IDENTITY Id 生成。它支援 SEQUENCE Id 生成,這通常建議使用,因為它允許預分配並且比 IDENTITY 更最佳化。可以透過使用資料庫觸發器來模擬 IDENTITY Id 生成。

Oracle 資料庫的一些功能總結如下:

  • 客戶端/伺服器資料庫
  • 多平臺 (Windows, Linux, Solaris, HP-UX, AIX, 其他)
  • 多語言客戶端支援 (Java, C, ODBC, C#, PHP, 其他)
  • JDBC thin 和型別 2 OCI 驅動程式
  • 儲存過程
  • 觸發器、檢視
  • Java 儲存過程
  • PL/SQL 語言
  • 訊息、佇列、AQ
  • 表分割槽
  • 資料庫叢集,RAC
  • Lobs
  • XDB,XML 支援
  • 面向物件關係資料型別,物件型別,Varrys,巢狀表


大多數應用程式伺服器和 JPA 提供商提供針對 Oracle 的特定支援,並支援大多數 JPA 功能以及超出 Oracle 上 JPA 規範的功能。

TopLink / EclipseLink : 對 Oracle 資料庫提供了擴充套件支援,請參閱 常見問題解答。EclipseLink 會自動檢測 Oracle 資料庫平臺,因此不需要持久化屬性,但可以使用 "eclipselink.target-database"="Oracle" 設定。EclipseLink 還提供對 Oracle JDBC 驅動程式擴充套件的擴充套件支援,可以透過將 "eclipselink.target-database" 設定為 "Oracle8", "Oracle9", "Oracle10", "Oracle11" 之一來啟用。
EclipseLink 對 Oracle 資料庫的擴充套件支援包括
  • LOB's
  • NChar's
  • XMLType's
  • TIMESTAMP (TZ, LTZ)'s
  • 原生批處理寫入
  • 分頁
  • 結構化面向物件關係資料型別
  • PLSQL 資料型別和儲存過程
  • VPD,代理身份驗證
  • RAC
  • XDK XML 解析器
  • 分層選擇(按優先順序選擇)
  • 返回值子句
  • 閃回曆史記錄和查詢
  • 儲存過程,輸出引數和輸出遊標
  • 儲存函式
  • Oracle AQ
Hibernate : 要將 Oracle 設定為目標方言,可以使用持久化屬性 "hibernate.dialect" 設定為 "org.hibernate.dialect.Oracle9Dialect"
華夏公益教科書