第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

我應(yīng)該如何在現(xiàn)有父級上的一對多基于注釋的映射中執(zhí)行更新操作?

我應(yīng)該如何在現(xiàn)有父級上的一對多基于注釋的映射中執(zhí)行更新操作?

慕俠2389804 2023-05-10 17:11:25
我有一個(供應(yīng)商)和許多(客戶)。我正在用三個新的客戶對象更新vid=101數(shù)據(jù)庫中的父對象。問題在于,在數(shù)據(jù)庫中,這vid=101與新創(chuàng)建的子對象相關(guān)聯(lián),但對于舊的兩個客戶對象,它變?yōu)榭?。這個問題只會出現(xiàn)在基于注解的代碼中。使用xml基于映射它的工作。Session session = factory.openSession();        Vendor v = (Vendor)session.get(Vendor.class, 100);    Customer c1 = new Customer();    c1.setCustomerId(502);    c1.setCustomerName("Rajveer");    Customer c2 = new Customer();    c2.setCustomerId(503);    c2.setCustomerName("Abhishek");    Set s = new HashSet();    s.add(c1);    s.add(c2);    s=v.getChildren();    v.setChildren(s);    Transaction tx = session.beginTransaction();    s=v.getChildren();    session.saveOrUpdate(v);    tx.commit();    session.close();
查看完整描述

1 回答

?
心有法竹

TA貢獻(xiàn)1866條經(jīng)驗 獲得超5個贊

1)在一個事務(wù)中執(zhí)行所有操作。


2)為每個孩子設(shè)置父母。


3)添加到獲取的子列表中。您正在覆蓋現(xiàn)有的


Session session = factory.openSession();

Transaction tx = session.beginTransaction();


Vendor v = (Vendor)session.get(Vendor.class, 100);


Customer c1 = new Customer();

c1.setCustomerId(502);

c1.setCustomerName("Rajveer");

c1.setParent(v);


Customer c2 = new Customer();

c2.setCustomerId(503);

c2.setCustomerName("Abhishek");

c2.setParent(v);


Set s = new HashSet();

s.add(c1);

s.add(c2);


v.addChildren(s); // Add, not Set, unless you want to delete existing ones


session.saveOrUpdate(v);

tx.commit();

session.close();


查看完整回答
反對 回復(fù) 2023-05-10
  • 1 回答
  • 0 關(guān)注
  • 121 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號