一級(jí)緩存和二級(jí)緩存,對(duì)象不相等?
一級(jí)緩存的情況下,tempEntity1 == tempEntity2是true,但是二級(jí)緩存輸出的是false,這是為什么呢??jī)蓚€(gè)都是從緩存獲取的不是應(yīng)該輸出true嗎?
一級(jí)緩存的情況下,tempEntity1 == tempEntity2是true,但是二級(jí)緩存輸出的是false,這是為什么呢??jī)蓚€(gè)都是從緩存獲取的不是應(yīng)該輸出true嗎?
2020-05-21
舉報(bào)
2020-06-09
二級(jí)緩存默認(rèn)是可讀寫的,在可讀寫的情況下會(huì)用序列化緩存SerializedCache來裝飾,在存入和獲取的時(shí)候會(huì)對(duì)數(shù)據(jù)對(duì)象進(jìn)行序列化和反序列化,返回的是一個(gè)新的對(duì)象。所以使用二級(jí)緩存的實(shí)體類必須實(shí)現(xiàn)序列化接口
,
2020-05-25
一級(jí)緩存是因?yàn)槭峭粋€(gè)sqlsession里面的,最終用的是同一個(gè)map作緩存,但是二級(jí)緩存,視頻里面使用的是兩個(gè)sqlsessionfactory,每個(gè)sqlsessionfactory獨(dú)占一個(gè)configuration,緩存最終是包含在configuration里面,最終用的是各自的map,自然不能直接相等