av激情亚洲男人的天堂国语,日韩欧美精品一中文字幕,无码av一区二区三区无码,国产又色又爽又刺激的a片,国产又色又爽又刺激的a片

Hibernate中的find與普通createQuery的區(qū)別

Hibernate中的find是根據(jù)主鍵首先去緩存中查找,找到就直接返回,找不到就接著去數(shù)據(jù)庫中查找;

而createQuery直接就去數(shù)據(jù)庫中查找,不管緩存中是不是已經(jīng)存在了;

兩者一般情況下邏輯效果是一樣的,只是性能上有些差別,但有些特定情況下就不同了。

輸入一批“水表數(shù)據(jù)信息”,循環(huán)處理這些信息,當(dāng)水表信息表示的水表不在數(shù)據(jù)庫中時(shí)就根據(jù)這些信息構(gòu)造水表實(shí)體存入數(shù)據(jù)庫,輸入的“水表數(shù)據(jù)信息”可能有相同的水表信息,這樣就會有多次查找同樣水表的查詢,但他們返回的結(jié)果不應(yīng)當(dāng)是相同的,第一次沒查到就新建一個(gè),再次查詢時(shí)應(yīng)該能查到,否則水表就會重復(fù)了。這時(shí)候Hibernate find與普通createQuery的區(qū)別就顯示出來了,新建后再find同樣的水表就會查出剛剛建立的水表(雖然他還沒有進(jìn)入數(shù)據(jù)庫,因?yàn)檠h(huán)完后才commit),而createQuery每次查詢結(jié)果都相同(查不到,因?yàn)閿?shù)據(jù)庫里沒有該水表),這樣就會新建多個(gè)相同的水表,導(dǎo)致數(shù)據(jù)庫主鍵重復(fù)異常。


分享名稱:Hibernate中的find與普通createQuery的區(qū)別
本文鏈接:http://uogjgqi.cn/article/dpocddh.html
掃二維碼與項(xiàng)目經(jīng)理溝通

我們在微信上24小時(shí)期待你的聲音

解答本文疑問/技術(shù)咨詢/運(yùn)營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流