乙個類中有方法a和方法b,呼叫方法a時,每次都會呼叫資料庫。和期望不符。
/**
* 方法a
*/public manager info()
/*** 方法b
*/@cacheable(key = "#id")
public manager info(long id)
spring 快取註解是基於spring aop切面,必須走**才能生效,同類呼叫或者子類呼叫父類帶有快取註解的方法時屬於內部呼叫,沒有走**,所以註解不生效。
方式一:將快取的方法抽離放到乙個單獨的類中,然後再在service的實現類中進行呼叫;
方式二:手動使用cachemanager來獲得快取效果。
以下情形註解式快取是不起作用的:
同乙個bean內部方法呼叫,子類呼叫父類中有快取註解的方法
Cacheable註解不生效原因
cacheable註解中 乙個方法a調同乙個類裡的另乙個有快取註解的方法b,這樣是不走快取的。例如在同乙個service裡面兩個方法的呼叫,快取是不生效的 解決方案 1.不使用註解的方式,直接取 ehcache 的 cachemanger 物件,把需要快取的資料放到裡面,類似於使用 map,快取的邏...
git ignore不生效原因
有時候我們配置了git ignore 發現不生效,每次提交的時候,有些加入到了ignore的檔案沒有過濾掉,這是因為我們最開始將那些應該過濾的檔案加入到了版本控制。所以解決辦法就是把它們從版本控制移除。我們需要先把本地快取刪除,然後再更新一下ignore檔案。在我們的專案目錄,開啟git bash,...
shiro許可權不生效原因分析
許可權標籤定義如下 標籤定義 頁面一頁面二 第一層級 one view two view 第二層級 one page1 view two page2 view 第三層級 one page1 view add two page2 view add 開始懷疑是資料庫沒有錄入,檢視後許可權標籤與角色已對應...