skillup

技術ブログ

Java

JPAのdetach

投稿日:

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

参考リンク

JPAまとめ

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

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

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

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

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

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

-Java
-

執筆者:


comment

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

関連記事

no image

JPAでのリレーションに関して

JPAではテーブルをクラスで定義します。もちろん例外とかはいろいろあるのですが、1テーブル1クラスというつくりで、これをエンティティと呼びます。 もともとクラスを作ってからDBを作成したり、JTAの規 …

no image

依存ライブラリを含むプログラムのjar化に関して

以前、jar化する場合のpomの記述方法について書いたのですが、一部記述が正しくなかったようです。 mavenでのjarファイル作成 この方法でやってもjarファイルを単独で取り出すとNoClassD …

no image

イテレーターに関して

Javaの繰り返しでイテレーターという概念がありますね。 今はあまり使われなくなっているようですが、資格の勉強をしていたら出てきたのと、たしなみとして知っておく必要があるため、記述します。 ソース [ …

no image

ポリモフィズム(多態性)とは

Javaでオブジェクト指向の考え方の重要な考え方であるポリモフィズムについて。 Contents1 ポリモフィズムとは?2 ソース ポリモフィズムとは? 日常的に使っていながらいざ説明するとなると困り …

no image

JavaでのPDF出力

JavaでのPDFファイルをダウンロードしたいと要望があって社内アプリの開発をしていましたが、思った以上にバグがでてかなり長期戦になりました。 やりたいことは ボタンを押すとファイルのダウンロードが始 …