這篇文章將為大家詳細講解有關(guān)如何進行Mybaitis的緩存優(yōu)化,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關(guān)知識有一定的了解。
讓客戶滿意是我們工作的目標,不斷超越客戶的期望值來自于我們對這個行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價值的長期合作伙伴,公司提供的服務(wù)項目有:申請域名、雅安服務(wù)器托管、營銷軟件、網(wǎng)站建設(shè)、九江網(wǎng)站維護、網(wǎng)站推廣。
我們先來看代碼
這段代碼中, Mybatis一共發(fā)了兩條SQL,這就好像說, Mybatis中沒有緩存,然后我們打開Mybatis的文檔一看,頓時震驚
這難道是騙人的,說好的默認開啟緩存呢…..
其實不是的,默認確實是開啟緩存的,但是我們還需要配置一點東西
UserMapper.xml
另外,對象還要實現(xiàn)序列化接口,否則報NotSerializableException
的異常
設(shè)置完畢之后,我們再來嘗試insert
的問題
此時發(fā)現(xiàn),發(fā)了3條SQL,那么究竟是什么原因呢?如下圖
看完這個圖,就明白為什么get(1L)->add()->get(1L)
這個過程會發(fā)3條SQL了,因為insert
的時候,清空了緩存
但是就算insert
,并沒有影響到get(1L)
的結(jié)果,但是你卻把他的緩存也清空了,這明顯不合理,那么我們怎么優(yōu)化呢?
那么我們可不可以這樣做呢?如圖:
也就是我們做了兩件事
list
由于緩存命中率低,那么我們就不加入到緩存中
insert
我們不清空緩存
那么在代碼中,我們具體是怎么實現(xiàn)的呢?
UserMapper.xml
這樣之后,我們Mybatis中的緩存就更高效了
關(guān)于如何進行Mybaitis的緩存優(yōu)化就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
文章題目:如何進行Mybaitis的緩存優(yōu)化
網(wǎng)頁網(wǎng)址:http://chinadenli.net/article0/pijiio.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站制作、網(wǎng)站改版、網(wǎng)站策劃、自適應(yīng)網(wǎng)站、域名注冊、虛擬主機
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)