2017-09-28 84 views
1

我正在尋找獨立於基礎持久性技術來訪問數據的API。 CRUD和一些搜索能力就足夠了。是否存在獨立於持久性技術的Java Data API

我需要這樣的一種情況,UI應用程序應該很容易地應用到不斷變化的數據層,我們不能控制這些變化。這些變化可能是例如

  • 一些新的或更改的數據字段結構的
  • 變化從表中樹
  • 從SOAP
  • 變化休息從SQL
  • 變化休息

有幾種方法可以解決這個問題,用於一組持久性技術。例如

  • JPA使應用程序開發人員獨立於SQL供應商
  • JSR 283從底層的CMS系統提供獨立
  • MS ODBC驅動程序給不僅給SQL還要CSV和Excel
  • 透明訪問
  • Java的XML映射器(JAXB,...),好了,他們沒有讓我們獨立於所有

但是,沒有解決方案,我發現到目前爲止能處理多種技術結合在一起。

也許這將是持久性的聖盃,但也許有一個解決方案,我只是沒有找到它。

有什麼想法?

enter image description here

回答

0

解決方案是JDO Java數據對象。

除了JPA以外,還有不止RDBMS系統的實現。此外,功能列表可以被視爲JPA的超集。

JDO不如JPA那麼受歡迎,雖然很老,因爲它是第一個JRS是JSR-12。它還活着;在規格3.1最後一次更新是在2015年

進行查找有關JDO這裏的一些信息:http://db.apache.org/jdo/index.html

的comprehencive實現DataNucleus將因爲它支持許多持久化技術:http://www.datanucleus.org/index.html
- API的支持:JDO 3.2,JPA 2 。2+,REST
- 映射支持:JDO,JPA
- 數據存儲支持:RDBMS,Excel中,OOXML,ODF,XML,HBase的,MongoDB的,卡桑德拉,Neo4j的,JSON,亞馬遜S3,GoogleStorage,LDAP

1

Java持久性API(JPA)是這個很常見。有很多提供者已經可用。如果需要,您也可以爲自定義後端創建自己的JPA提供程序。

常見和抽象API層的問題在於,它受限於所有其他可能提供者的「共同點」。有時你必須打破這種抽象,以更高效,特定於平臺的方式處理數據。在你的計劃中注意這一點,並希望它能很好地發揮作用!

+0

我我會試試看。與EclipseLink + MOXy以及mid -dle匹配映射一起使用 – karldegen

相關問題