亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Hibernate中session常用方法

發布時間:2020-07-04 21:25:14 來源:網絡 閱讀:2645 作者:奔跑吧爽爽 欄目:開發技術

1.session.save(實體類) 保存
2.session.get(實體類的字節碼文件,變量id)
3.session.update(實體類)
4.session.delete(實體類)
5.查詢使用query對象來查詢
Query q = session.createQuery(hql)
什么是hql
hql是hibernate的查詢語言 ( from 實體類) 不需要寫selcet
相對于sql語句,在hql語句中 涉及到表中信息的,都使用實體類和類中的屬性代替
List<實體類> 變量 = q.list();

6.和一級緩存相關的方法
6.1
close() 關閉session,說明session已經不能用了
clear() 清除session中的一級緩存,所有緩存在session中的數據全部被清除
區別:clear()方法session還可以用
6.2
evict(Object)清除一級緩存中指定的對象
6.3
refresh(Object) 使用數據庫中的數據修改緩存的數據 同時也會修改內存對象 快照是拿緩存中的數據修改數據庫 refresh拿數據庫中的數據修改緩存
6.4
flush()手動執行快照機制 默認是在事物提交時執行快照機制

7.save和persist的區別
共同點把臨時態變成了持久態
區別:
save方法是hibernate提供的
persist方法是jpa規范提供的
jpa規范:java持久化api
該規范的指定有hibernate作為主導
但是,由于他是一個規范,任何支持持久化的orm框架都比尋遵循,hibernate也不能例外
最重要的區別:事物問題
如果有事物的話,兩個都是執行保存(把對象有臨時態變成持久態)
如果沒有事物:
save方法:
Hibernate3執行保存操作,但是但是由于沒有事物,則不會提交。事物會自動回滾
hibernate5會在一個內置的事物中執行
persist方法:什么都不會做
8.update和merge
Hibernate中session常用方法
第一步對象從臨時態變成永久態
第二部對象從永久態變成托管態
第三部把jvm中的內存對象的值改變
第四部對象從臨時態便曾永久態
第五步更新托管態對象報錯(因為update方法會先把托管態對象加載到以及緩存中,以及緩沖中已經存在了oid形同的對象)NonUniqueObjectException
解決辦法是用merge方法
merge會把兩個相同oid的對象數據合并 永遠是用臨時態或者托管態的對象數據改變持久態的

update時 如果更新的數據。在提交之前被其他程序刪除 會報錯

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

商丘市| 鄂伦春自治旗| 磐安县| 辽阳县| 八宿县| 红原县| 岳阳市| 兴宁市| 宜宾县| 新丰县| 苍南县| 靖安县| 周至县| 民县| 德惠市| 伽师县| 江达县| 石狮市| 板桥市| 县级市| 准格尔旗| 孟村| 介休市| 北流市| 宣威市| 城市| 鹿泉市| 沁源县| 仙游县| 汝州市| 康马县| 仪陇县| 上思县| 建始县| 南乐县| 舞钢市| 文成县| 乌兰县| 稻城县| 辽宁省| 石屏县|