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()