JavaとJavaEEプログラマのブログ

JavaEEを中心にしたをソフトウェア開発についてのブログ

JPA2.0入門 〜JPA2.0を使ったデータ操作はEntityManagerクラスのみを使う〜

データ操作はすべてEntityManagerを使って行う。

EntityManagerで主に使用するメソッドは次のとおり。

  • 検索(遅延ロードポリシーに基づいて各プロパティを初期化。検索対象が無い場合はnullを返す):find()
  • 検索(検索対象が無い場合は例外を返す):getReference()
  • 登録:persist()
  • 更新:merge()
  • 削除:remove()
  • トランザクションの取得:getTransaction()
  • Query作成:createQuery(),createNativeQuery(),createNamedQuery()
  • キャッシュを取得する:getCache()
  • エンティティをロックする(悲観的・楽観的でいくつかのモードを指定できる):lock()

あまり使わないメソッド

  • DBとエンティティを明示的に同期する:flush()
  • エンティティがEntityManagerの管理下にあるかどうか判定する:contains()
  • エンティティをEntityManagerの管理からはずす:clear()