2015年11月22日日曜日

JPA実装の違い

JPA(Java Persistence API)の実装には複数あるが、どれを使うのが良いのだろうか。
Hibernateは独自機能が多そうなので、ずっと使い続けることができる状況なら良さそうだが、そうでない場合はEclipseLinkを使っておくのが無難っぽい。OpenJPAはあまり開発が活発ではないようで、JPA 2.1に対応できていない(私は2.1の新機能を使うほどJPAを使いこなすことはないと思うけど、開発が活発な方を選んでおきたい)。他には、あまり情報が集められないけどDataNucleusが面白そう。

名前 開発元 仕様 備考
EclipseLink Eclipse
Foundation
JPA 2.1, 2.0 JPA仕様の参照実装
Hibernate RedHat JPA 2.0, 2.1
OpenJPA Apache
Foundation
JPA 2.0
JPA for WebSphere Application Server IBM JPA 2.0, 2.1 JPA 2.1実装はEclipseLinkベース、JPA 2.0実装はOpenJPAベース(WebSphere Liberty Profileの場合)
TopLink Oracle JPA 2.0 JPA 2.1サポートはJavaEE7に含まれるためパッチとして提供


0 件のコメント:

コメントを投稿

DockerでMQ環境を作る

DockerHubの ibmcom/mq を使う。ファイルシステムとしてtmpfsは使えないので これ を参考に/mnt/sda1に置き換える。 brew install docker docker-machine docker-machine create --drive...