Java Persistence API の final リリース

http://jcp.org/aboutJava/communityprocess/final/jsr220/index.html

ドラフト版のときのように変更箇所に線が引かれていないのでどこが変わったのかぱっと見わからないよー。線つきバージョンも出ればいいのに。


Revision Historyを参考にざっくり興味があるところを見てみました。

  • JPAのクエリ言語はいままで「EJB QL」と呼ばれていましたが、「Java Persistence query language」という名称に変わりました。「Java Persistence query language」は「EJB QL」を拡張した言語という位置づけらしいです。気になっていただけにちょっとすっきり。略称は「JP QL」?
  • EntityManagerFactoryとEntityManagerのインタフェースが若干変更されました。これは前da-yoshiさんが言っておられましたね。id:da-yoshi:20060316
  • アプリケーション管理のエンティティマネジャーの永続コンテキストがEXTENDEDになりました。あとアプリケーション管理のエンティティマネジャーをJTA外部で作成した場合、エンティティマネジャーをJTAに関連付けるにはEntityManager.joinTransactionを使う必要があるらしいです。要注意。
  • エンティティマネジャーがスレッドセーフじゃないと明記されました。
  • プロパティアクセスを使うときプロパティにに直接アクセスしてはいけないということが明記されました。これはそのプロパティがプロキシオブジェクトかもしれないからってことに関係する?
  • XMLの設定ファイルにアノテーションを完全に無視するためのmetadata-complete要素があるみたいです。