国产成人精品18p,天天干成人网,无码专区狠狠躁天天躁,美女脱精光隐私扒开免费观看

Hibernate中merge如何使用

發(fā)布時(shí)間:2021-07-27 11:45 來(lái)源:億速云 閱讀:0 作者:Leah 欄目: 編程語(yǔ)言 歡迎投稿:712375056

今天就跟大家聊聊有關(guān)Hibernate中merge如何使用,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。

  Hibernate中的merge怎么使用

  當ID在數據中能找到的時(shí)候,update與merge的執行效果都是更新數據,發(fā)出update語(yǔ)句;

  如果沒(méi)有設置ID的話(huà),則這個(gè)對象就當作瞬態(tài)處理:

  用update的話(huà),由于沒(méi)有ID,所以會(huì )報異常,merge此時(shí)則會(huì )保存數據,根據ID生產(chǎn)策略生成一條數據;

  Sessionsession1=HibernateUtils.getSession();   Transactiontransaction1=session1.beginTransaction();   Studentsstr1=newStudents();   str1.setStu_id(4);   str1.setName("222");   session1.merge(str1);   str1.setName("333");   transaction1.commit();   session1.clear();   session1.close();

  下面是當對象在第一個(gè)session關(guān)閉后,處于游離狀態(tài),第二個(gè)session開(kāi)啟,又get或load一樣的ID的數據出來(lái)時(shí),在第二個(gè)session中update那個(gè)游離態(tài)對象,update肯定會(huì )出錯,原因是程序會(huì )報持久層中已經(jīng)有該對象,因為第二個(gè)session重新從數據庫中獲取了一個(gè)對象成持久態(tài),你的update會(huì )讓那個(gè)游離態(tài)對象也變成持久態(tài),兩個(gè)持久態(tài)會(huì )沖突撒,然而用merge的話(huà),它會(huì )把第一個(gè)的對象數據賦值給已經(jīng)處于持久化的那個(gè)對象中,自己本身不得變?yōu)槌志脩B(tài);

  Hibernate中的merge怎么使用

  Sessionsession1=HibernateUtils.getSession();   Transactiontransaction1=session1.beginTransaction();   Studentsstr1=(Students)session1.get(Students.class,2);   transaction1.commit();   session1.clear();   session1.close();   Sessionsession2=HibernateUtils.getSession();   Transactiontransaction2=session2.beginTransaction();   Studentsstr2=(Students)session2.get(Students.class,2);   session2.merge(str1);   transaction2.commit();   session2.clear();   session2.close();   Sessionsession2=HibernateUtils.getSession();   Transactiontransaction2=session2.beginTransaction();   Studentsstr2=(Students)session2.get(Students.class,2);   str1.setName("wer");   session2.merge(str1);   System.out.println(str2.getName());//這里改變了,說(shuō)明持久態(tài)的數據也會(huì )改變   str2.setName("ee");   System.out.println(str1.getName());//這里不會(huì )改變,說(shuō)明第一個(gè)游離態(tài)的數據沒(méi)有被持久化撒;   transaction2.commit();   session2.clear();   session2.close();

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng )、來(lái)自本網(wǎng)站內容采集于網(wǎng)絡(luò )互聯(lián)網(wǎng)轉載等其它媒體和分享為主,內容觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如侵犯了原作者的版權,請告知一經(jīng)查實(shí),將立刻刪除涉嫌侵權內容,聯(lián)系我們QQ:712375056,同時(shí)歡迎投稿傳遞力量。

国产精品久久久天天影视香蕉| 国产精品专区第1页| 国产偷国产偷亚洲清高APP| 欧美午夜一区二区福利视频| 天堂中文最新版在线官网在线| 免费人妻无码不卡中文字幕系|