Мне нужно получить ключи ключей кэша гуавы и выселить некоторые ключи.Например, ключ имеет тип user1, user2-type.Мне нужно выселить userId при обновлении настроек.
public void updateSetting(String userId, String type, UserSettingDto settingDto) {
UserSetting setting = userSettingDao.get(userId, type);
setting.setValue(settingDto.getValue());
userSettingDao.save(setting);
GuavaCache userSettingCache = (GuavaCache) cacheManager.getCache("userSettingCache");
Object nativeCache = userSettingCache.getNativeCache();
HashMap nativeCache1 = (HashMap) nativeCache;
System.out.println(nativeCache);
System.out.println(nativeCache.toString());
NativeCacheDto nativeCacheDto = objectMapper.convertValue(nativeCache, NativeCacheDto.class);
System.out.println(nativeCacheDto.getLocalCache());
HashMap<Object, Object> objectObjectHashMap = new HashMap<>();
objectObjectHashMap.put("key","value");
System.out.println(objectObjectHashMap);
}
/**
* query for the user setting
*
* @param userId user id
* @param types the array of type
* @return the list of user settings
*/
@Cacheable(cacheManager = "userCacheManager", cacheNames = "userSettingCache", key = "'userId_' + #userId + 'types_' + #types")
public List<UserSettingDto> querySetting(String userId, String[] types) {
}