2011-10-01 29 views
3

Java中的JDO(JSR 243)和SDO(JSR 235)有什麼不同?什麼一套開源供應商可用於這些Java規範java中的SDO和JDO之間的區別

+0

http://en.wikipedia.org/wiki/Java_Data_Objects http://en.wikipedia.org/wiki/Service_Data_Objects –

+0

DataNucleus實現了JDO規範的全部範圍,並被許多公司使用。我不知道有任何公司在任何程度上使用SDO。 – DataNucleus

回答

3

this article

[...] JDO着眼於持久性 問題只[...],而SDO更具一般性,並代表可以在任何J2EE層之間流動 的數據,例如在演示文稿和業務層之間流動 。

EclipseLink是一個SDO提供者,Apache's DB project是一個JDO實現。

+0

我可以使用JDO可以完成的SDO來實現所有功能嗎? –

+0

更正:Apache JDO項目包含用於JDO的API和TCK。它沒有實現。 DataNucleus是JDO 2,2.1,2.2和3.0的「參考實現」。 – DataNucleus

+0

啊,我明白了。雖然不幸的版本編號;版本3.0實現3.1。 2.1支持3.0。 1.0支持2.2。 *嘆息* –

1

對於摘錄,您可以閱讀適當的JSR頁面上的「請求」部分,以獲取JDOSDO

實踐和快速入門:JDO是JPA的父親。

  • JPA實際使用和可用的(這不是理所當然的在Java EE世界),Hibernate和的EclipseLink是JPA 2個熟知的開源implmenetations。

  • SDO:我從來沒有看到過我曾參與的任何項目,也沒有聽說過它。閱讀JCP頁面上的Blurb使我覺得這是那些不是爲現實生活設計的過於普遍和笨拙的Java EE標準之一。

在挖掘JPA的同時,可以隨時忽略SDO。