中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

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

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

陆河县| 蕉岭县| 恩施市| 襄垣县| 广平县| 乌兰县| 新河县| 湟源县| 志丹县| 林州市| 寿阳县| 开远市| 都江堰市| 饶阳县| 保山市| 剑河县| 九台市| 金阳县| 平阳县| 习水县| 泸水县| 富锦市| 淅川县| 贵阳市| 丹棱县| 日喀则市| 泾川县| 深州市| 察哈| 克拉玛依市| 乌鲁木齐市| 游戏| 航空| 营山县| 白城市| 沾化县| 颍上县| 天气| 攀枝花市| 舒城县| 杂多县|