オープンソースのJava永続性プラットフォーム JPOX(サイト・英語)は、今後の方向性が原因でDataNucleus(サイト・英語)となった。プロジェクト開始時から活動していた範囲が、大きく変更されるためである。
JPOXはフリーで、JDO1やJDO2、JDO2.1、JPA1の仕様に完全に準拠した実装であり、Javaオブジェクトの透過的永続性を提供している。JPOXは2008年2月にJPA1のTCK(テクノロジ互換キット)のテストに合格した(source)、 JPA準拠の永続性フレームワークである。現在市場に出ている主要なRDBMSの大部分やdb4oオブジェクトデータストア向けの永続性機構をサポートしており、JDOQLかSQLあるいはJPQLを使用した問い合わせが可能で、独自のバイトコード・エンハンサが付属している。また、地理空間を表すJavaの型の永続化(source)に関して、OGCのSimple Feature仕様にも準拠している。JPOXはオープンソースのApacheライセンス2の下で利用可能である。
DataNucleus は、ゆくゆくはデータ解析ツールを提供することはもちろん、広範囲のデータストアやAPI、サービスをサポートすることに集中しているアプリケーションデータ管理の領域までJPOXの範囲を拡張している。標準に準拠したオープンソースのJava永続性の製品であり、JDO1、 JDO2、JDO2.1、JPA1のJava標準に完全に準拠している。OSGiベースのプラグインの仕組みも利用しており、これは拡張性が高いことを意味している。
DataNucleus Access Platform 1.0(開発コード「Faraday」)のMilestone 1(source)は、JPOXのコードベースを取り込んで、次のような拡張を行っている。
- JDO/JPAのAPIを通したLDAPへのJavaオブジェクトの永続化のサポート。
- JDO経由での、LDAPに保存されたオブジェクトの基本的なJDOQLによる問い合わせのサポート。
- Apache POIを利用し、JDO/JPA APIを通した、ExcelへのJavaオブジェクトの永続化のサポート。
- JAXBを利用した、JDO経由での、LDAPに保存されたオブジェクトの基本的なJDOQLによる問い合わせのサポート。
- JDO/JPAのAPIを通した、XMLへのJavaオブジェクトの基本的な永続化のサポート。
- JDO/JPAのAPIを通した、db4o上に保存されたオブジェクトのSQL問い合わせのサポート。
さらに、ユーザはJDO XML/アノテーションまたはJPA XML/アノテーションを使用して永続性機構を定義し、(どちらの永続性機構の定義が使用されたとしても)JDOかJPA APIのいずれかを永続性機構として利用することができ、永続性機構にデータストア全体を割り当てることができる。
DataNucleusのサイトには、EclipseやNetBeans、Maven、Antとの統合例のガイド(source)が置かれている。
DataNucleusの製品はオープンソースライセンスApache 2(source)の下で提供されるだろう。
ORMの詳細はこちらで探すことができる: infoq.com/orm
原文はこちらです: