HibernateEntityManager3.4.0または3.6.10
MyEntity {
@Id // NOT @GeneratedValue
long cislo;
@OneToMany( ... )
List<MyItem> items = new ArrayList();
public MyEntity( long cislo ) { this.cislo = cislo; }
...
}
そして、DAOでは:
MyEntity ent = new MyEntity( id );
ent.addItem( new Item( ... ) );
ent.addItem( new Item( ... ) );
ent = em.merge( ent );
1)エンティティが切り離されていると文句を言うのではmerge()
なく、なぜ使用する必要があるのですか?persist()
IDを手動で設定したためですか?
2)このマージがコレクションが設定されていないプロキシを返すのはなぜですか?
3)最も重要:完全に初期化されたエンティティをから取得するにはどうすればよいmerge()
ですか?メンバーコレクションの
設定以外。
元のオブジェクトを使用することもできますが、それが可能かどうか知りたいです。エンティティを照会することもできますが、それはリソースの浪費のようです。EAGER