RedisCache中remove方法什么時候被調用
public?V?remove(K?k)?throws?CacheException?{
????byte[]?key?=?getKey(k);
????byte[]?value?=?jedisUtil.get(key);
????jedisUtil.delete(key);
????if?(value?!=?null)?{
????????return?(V)?SerializationUtils.deserialize(value);
????}
????return?null;
}這個remove是在我們調用
subject.logout();
時自動調用嗎?顯示我想實現用戶退出后權限數據清空,再次登陸重新加載
2019-12-08
應該不是subuject.logout() 清空緩存信息,從源碼看logout只是刪除session信息
我從Shiro的CacheManager里面看了下,里面只有getChaceh方法,所以清空緩存應該是自己根據業務來判斷是否需要清空緩存
package?org.apache.shiro.cache; public?interface?CacheManager?{ ????<K,?V>?Cache<K,?V>?getCache(String?var1)?throws?CacheException; }