skillup

技術ブログ

Java

JPAのdetach

投稿日:

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

参考リンク

JPAまとめ

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

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

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

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

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

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

-Java
-

執筆者:


comment

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

関連記事

no image

Javadocに関して

業務で社内で使うクラスライブラリを作成中です。 他人に使ってもらうものなのでコメントやドキュメント周りの整備が必要になり、javadocをしっかり作りたいと思っています。 Contents1 java …

no image

try~catch~finallyで気を付けること

JavaでExceptionが発生したとき、基本的にはtry~catch~finallyをつかっているのですが、今回Exceptionが吐かれないという事態があったのでメモします。 [crayon-6 …

no image

開発環境と本番での設定ファイル変更

開発と本番で設定ファイル自体(web.xmlなど)はわけると思うのですが、以前はわからず、開発のものと本番のものを手動でわけていました。 Javaでどうやってやるかを調べたところ、pomにかなり便利な …

no image

Streamでの特定条件化のカウント&合計値算出

Java8、streamで値を抽出し、カウントと合計値の算出について、小ネタです。 一番多いのがList<Map>タイプの値の検出です。 [crayon-64746b78729ba5129 …

no image

日付がらみの処理に関して(MySQL&Java)

MySQL触りだして3年ぐらいたつんですがいまだに整理できないことが多いです。(特に日付がらみ) ちょっとJavaのネタと合わせて整理しておこうかなーと思います。 Contents1 MySQLの日付 …

アーカイブ