skillup

技術ブログ

Java

JPAのdetach

投稿日:

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

参考リンク

JPAまとめ

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

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

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

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

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

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

-Java
-

執筆者:


comment

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

関連記事

no image

JavaSEでのCDI

以前、JavaSEでもCDIを使ってみたい!と思ったのですが、以前は探し方が悪かったのか情報を見つけ出すことができませんでした。 が、昨日ちょっと検索したらちょっと情報があり、無事実装できたのでメモし …

no image

dbUnitの使い方

えーJavaで有名なテストツールDBUnitについて。 DbUtilではありませんので間違えないように。(私は最初間違えました・・・) まだ全然使い込んでるわけではありませんがどんなことができるかとい …

no image

JSPでのAjax(dwr使用)

JSPネタ3本目。 Ajaxです。 こちらも独自のライブラリを使うようですね。 drwというものが有名のようです。 Contents1 dwr1.1 pomでの記述1.2 web.xml1.3 dwr …

no image

JavaでのSQLの書き方

ちょっと小ネタです。 通常SQLを記述する場合、縦に分けて書くのが見た目にも見やすく、保守性も高いです。 例として

と書くよりは、 [ …

no image

JSFのメッセージのレンダリング

ManagedBeanとJSFでメッセージのやり取りをする場合、直接メッセージを変数として持たせるよりは、JSFの仕組みを通じてメッセージを出力させたほうが適切です。 Contents1 エラーメッセ …