JPA2.0 Proposed Final Draft

http://blogs.sun.com/ldemichiel/entry/java_persistence_2_0_proposed
JPA 2.0 の型安全な Criteria と Metamodel API - エキスパートグループが提案最終ドラフト

個人的にJava EE6にてもっとも期待する部分の1つであるJPA2.0ですが、ファイナルドラフトが提案されてますねぇ。
あまり好意的な意見の聞かれなかった*1Criteriaがタイプセーフになってます。
メタモデルAPIを追加することでそれを実現しようじゃないか!って感じのようです。

Entity(各プロパティー)に対するメタ情報を持ったメタクラスを対として作成し、それを使用しつつJPQLを組み立てるって感じですね。

サンプルソースを見ると、もはや単なるJavaのソースです(いや、当たり前ですがw)。SQLもどきである文字列のJPQLはもはやそこには存在しませんね。
これを見て「こんなコード書くならSQL書いたほうがいいだろ、常考」という人はたくさんいそうですが、普段JPQLをゴリゴリ使ってる人間として「タイプセーフ」という言葉はとても魅力的です。
やっぱりタイプミスとかでエラーが出ると「Java(静的型付け)でやってるのに・・・」と思わざるをえませんでしたしねぇ。

おそらくNetBeansメタクラス生成もすぐに対応してくれるでしょうし個人的には「クラスを1個多く書かないといけないのはメンドイ・・・」とは感じなさそうです*2

まぁ、いろいろ好き嫌いが分かれそうなJPAですが、2.0には期待してます。

*1:自分がいろいろブログとか見て回ったかぎり

*2:もちろんアノテーションとかのみで対応できればより良いでしょうが、JavaSE6ベースだと無理ってことですね