skillup

技術ブログ

Java

JPAのdetach

投稿日:

このブログで何回か書いてきたんですが、JPAを使うときにpersisit=insert,merge=updateではないです。

参考リンク

JPAまとめ

JPAでのデータベースとの同期

実はJPAでfindを使ったときにそのあと、エンティティのプロパティを変更するとmergeを行わなくても値が変更されます!

要するにエンティティマネージャー管理下に置かれているということなんでしょうね・・・

その場合、detachというメソッドを使うとエンティティマネージャーの管理下から外れ、findのあと値がいきなり変更される、という自体は防げます。

JPAはいろいろと大変なことが多いですね・・・・

ちなみに参考にしたのは金魚本の第4章のです。

-Java
-

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

no image

型パラメータに関して その2

Javaでオブジェクト指向に基づいたコーディングをするために必須であり、最初の難関だったのが型パラメータでした。 Contents1 型パラメータが必要なケース2 型パラメータの制限3 クラスインスタ …

no image

依存関係エラー

JavaEEで新PCでビルドしたらいきなりエラー。同一のソースを別PCで動かすと正常に立ち上がります。 こんな場合、GlassFishの設定がおかしいか、ライブラリの依存関係に問題があることがほとんど …

no image

スコープアノテーションとCDIについて

JavaEEで個人的に鬼門がCDIとスコープだと思っています。 ここが少しずつ分かりかけてきたんでメモします。 まずJavaEEでは変数の生存期間をアノテーションで定義します。 これがなかなか分かりに …

no image

テストコードの実装

以前、テストコードの大切さを力説しましたが、実際に書いてみると作業の安心度が全く違います。 やはりメソッド単位での確認やデバッグができるのは非常にありがたいです。また時間がたってもテストコードを見るこ …

no image

JavaEEでリダイレクトを伴うデータ入出力(flashの活用)

JavaEEで何らかの処理を行い、リダイレクトさせる場合、リダイレクト前のデータを保存し、リダイレクト後のページにデータをもちこしたいときなどがあると思います。 オブジェクトの変数自体はスコープアノテ …

アーカイブ