一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服務器之家 - 編程語言 - JAVA教程 - java Hibernate save()與persist()區別

java Hibernate save()與persist()區別

2020-03-20 12:08java教程網 JAVA教程

本文章來給各位同學介紹一下Hibernate save()與persist()區別,希望此文章能對各位同學對于Hibernate save()與persist()有所理解

Hibernate 之所以提供與save()功能幾乎完全類似的persist()方法,一方面是為了照顧JPA的用法習慣。另一方面,save()和 persist()方法還有一個區別:使用 save() 方法保存持久化對象時,該方法返回該持久化對象的標識屬性值(即對應記錄的主鍵值);但使用 persist() 方法來保存持久化對象時,該方法沒有任何返回值。因為 save() 方法需要立即返回持久化對象的標識屬性,所以程序執行 save() 會立即將持久化對象對應的數據插入數據庫;而 persist() 則保證當它在一個事物外部被調用時,并不立即轉換成 insert 語句, 這個功能是很有用的,尤其當我們封裝一個長會話流程的時候,persist() 方法就顯得尤為重要了。

這里給出一個明確的區分。(可以跟進src看一下,雖然實現步驟類似,但是還是有細微的差別)
主要內容區別:
1,persist把一個瞬態的實例持久化,但是并"不保證"標識符(identifier主鍵對應的屬性)被立刻填入到持久化實例中,標識符的填入可能被推遲到flush的時候。
2,save, 把一個瞬態的實例持久化標識符,及時的產生,它要返回標識符,所以它會立即執行Sql insert

其它網友的解釋:


save方法

保存持久化對象時,該方法返回該持久化對象的標識屬性值(即主鍵)。
該方法會立即將持久化對象的對應數據插入數據庫。

persist方法

該方法沒有返回任何值。

保證當它在一個事務外部被調用時,并不立即轉換為insert語句。
適用于長會話流程。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 四虎影视在线永久免费观看 | 日韩r | 欧美久久天天综合香蕉伊 | 国内精品久久久久久野外 | 免费高清视频在线观看 | 国产草草视频 | 亚洲精品久久玖玖玖玖 | 99久久精品免费看国产情侣 | 免费精品99久久国产综合精品 | 日韩免费在线观看 | 日韩高清成人毛片不卡 | 欧美黑人ⅹxxx片 | 精品在线看 | 免费在线视频成人 | 我年轻漂亮的继坶2中字在线播放 | 成人观看免费观看视频 | 男人jj视频| 久久机热视频 这里只有精品首页 | 亚洲aⅴ男人的天堂在线观看 | 欧美一区二区三区在线观看免费 | 日本福利视频网站 | 国产免费久久精品 | 国产精品猎奇系列在线观看 | 视频高清在线观看 | 国产亚洲一级精品久久 | www.成人在线视频 | 日本-区二区三区免费精品 日本破处 | 九九精品国产兔费观看久久 | 国产成人福利免费视频 | 91香蕉国产在线观看人员 | 亚洲成人免费 | 俄罗斯一级淫片 | 办公室出轨秘书高h | 国内精品在线播放 | 美女班主任让我爽了一夜视频 | 国内精品久久久久影院嫩草 | 久久无码人妻中文国产 | 人妖三级| 色老板在线视频观看 | 欧美涩区| 天天综合色网 |