!エンジニア人生を楽しみたい!仕事や趣味で学んだ技術的なことを書いていくブログです。JPA」の訂正で書いた方式を採用しています。プロト開発ではJPAを利用してデータベースを操作しています。ORマッパーは初めて利用するので、まだ慣れない感じですが、勉強していて面白いです。開発の中であるトランザクションをまるっとコピーする処理が必要となりました。具体的には商談-見積-製品...と親子関係のあるデータにおいて、商談をコピーして再利用する、といったようなものです。langライブラリを使ってSerializationUtils.clone()を使う辺りがスタンダードのようです。serialization.なんてエラーが出てしまいました。Entityの@OneToManyの部分でfetch=FetchType.EAGERはつけていない(LAZY)にしているのが悪いのでしょうか。そんなこんなで色々調べていた所、Stackoverflowにこんな話もありました。・JPAでfindしたインスタンスのIDをnullにするhttp://stackoverflow.com/questions/1106632/deep-copy-in-jpaこれが本当なら結構楽そうです。試してみた所、うまく動きました。oppEntityFacade.find(opportunity.getOpportunityId());oppEntityFacade.detach(copyOpportunity);copyOpportunity.setOpportunityId(null);//以降、配下にあるコレクションの中でOpportunityIdをみるものもnullDBのスキーマによっては微妙な場合もありそうですが、とりあえずプロトはこんな感じで実装してみました。Listenersを試してみた久しぶりにJPAネタです。ヶ月)長らくC#屋でした。EEを触ることになりました。Web開発も初めてです。日々の勉強メモとしてブログ作成。デビュー当時から堀北真希さんを愛するエンジニアです。現在は乃木坂46が大好きです。(15)にほんブログ村にほんブログ村はてなブログをはじめよう!kikutaro777さんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。