次の問題:
関係: |ショップ| --1--------n--> |製品|
だから私は多くの製品を持つことができるショップという名前のエンティティを持っています。
void addProductToShop(Shop shop, Product product);という関数を開発しました。
次のようになります。
public void addProductToShop(Shop shop, Product product)
{
entityManager = entityManagerFactory.createEntityManager();
entityManager.getTransaction().begin();
shop = entityManager.merge(shop);
shop.getProductList.add(product);
entityManager.getTransaction().commit();
entityManager.close();
}
すべてが正常に機能し、データベースに正しく書き込まれます。問題は、アプリケーション コードで 2 つのエンティティが更新されていないことです。
したがって、addProductToShop(shop, product);を呼び出した後。2 つの変数shopとproductを更新する必要があります。それらには最新の変更がないためです (callByValue のため)。
しかし、この関数の消費者として、データベースだけでなく、呼び出し後にパラメーターが変更されると想定しています。各関数呼び出しの後にショップと製品の更新を要求せずにこれを達成するにはどうすればよいですか?
ベストプラクティスはありますか?
ありがとう、アレックス