日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

hibernate保存失败_Hibernate:保存与保存并保存或更新

發布時間:2023/12/3 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 hibernate保存失败_Hibernate:保存与保存并保存或更新 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

hibernate保存失敗

save和saveOrUpdate之間的區別是什么或save和persist之間的區別是任何Hibernate面試中常見的面試問題,就像Hibernate中get和load方法之間的區別一樣。 Hibernate Session類提供了幾種通過save , saveOrUpdate和persist等方法將對象保存到數據庫中的方法。 您可以根據將對象持久存儲到Database中的要求使用save() , saveOrUpdate()或persist() 。 Hibernate問題與Spring框架Interview問題一起 ,在J2EE面試中也很受歡迎,因為它在ORM中處于領先地位。 在出現在任何J2EE采訪中之前,最好準備Hibernate的一些問題。 其中之一是save , saveOrUpdate和persist之間的區別 ,我們將在本文的Hibernate中看到這一點。

Hibernate中save和saveOrUpdate之間的區別

save and saveOrUpdate 方法 之間的主要區別是save()生成一個新的標識符并將INSERT記錄插入數據庫,而saveOrUpdate可以根據記錄的存在而進行INSERT或UPDATE。 顯然, saveOrUpdate在使用方面更為靈活,但是它需要進行額外的處理才能找出表中是否已存在記錄。 總之, save()方法通過INSERT SQL查詢將記錄保存到數據庫中,生成一個新的標識符,并將Serializable標識符back 。 另一方面,基于數據庫中對象的存在,可以使用INSERT或UPDATE的saveOrUpdate()方法。 如果數據庫中已存在持久性對象,則將執行 UPDATE SQL,并且如果數據庫中沒有對應的對象,則將運行INSERT。

Hibernate中保存和持久方法之間的區別

在上一節中,我們看到了save和saveOrUpdate之間的區別是什么,現在我們將看到save方法與persist方法的區別。

  • 保存和persist之間的第一個區別是返回類型。 與保存方法persist類似,也將INSERT記錄插入數據庫,但是persist返回類型為void,而save的返回類型為Serializable對象。
  • persist和保存之間的另一個區別是,這兩種方法都使臨時實例persist 。 但是, persist ()方法不能保證將標識符值立即分配給persist實例,分配可能在刷新時發生。
  • 區別Hibernate中persist和保存方法的另一件事是在事務邊界之外存在行為。 persist ()方法保證了如果在事務邊界之外調用它,它將不會執行INSERT語句。 save()方法不能保證相同,它返回一個標識符,并且如果必須執行INSERT來獲取該標識符(例如“ identity”生成器),則無論您位于a的內部還是外部,此INSERT都會立即發生。交易。
  • Hibernate中save和persist方法之間的第四個區別與先前的save和persist差異有關。 由于其上述persist方法在事務邊界之外的行為,因此在具有擴展Session上下文的長時間對話中很有用。 另一方面,在具有擴展Session上下文的長時間對話中,保存方法不是很好。
  • 這些是Hibernate的save , saveOrUpdate和persist方法之間的一些區別 。 這三種方法都與將對象保存到數據庫有關,但是行為卻大不相同。 有關save , persist和saveOrUpdate知識,不僅有助于決定如何更好地使用Hibernate API,而且還可以幫助您在Hibernate采訪中做得更好。

    別忘了分享!

    參考: JavaRevisited博客上的JCG合作伙伴 Javin Paul提供了Hibernate中save,persist和saveOrUpdate之間的區別 。


    翻譯自: https://www.javacodegeeks.com/2012/09/hibernate-save-vs-persist-and.html

    hibernate保存失敗

    總結

    以上是生活随笔為你收集整理的hibernate保存失败_Hibernate:保存与保存并保存或更新的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。