私信  •  关注

Oliver Nybroe Muhammad Inshal

Oliver Nybroe Muhammad Inshal 最近创建的主题
Oliver Nybroe Muhammad Inshal 最近回复了
5 年前
回复了 Oliver Nybroe Muhammad Inshal 创建的主题 » 如何创建redis条件bean?

如果redis服务器没有运行,则需要实现一个缓存错误处理程序,如果数据没有缓存,该处理程序将重定向到要调用的原始方法。下面的错误处理程序应该做到这一点:

@Component
public class RedisCacheErrorHandler implements CacheErrorHandler {

    private final Logger log = LoggerFactory.getLogger(getClass());

    @Override
    public void handleCacheGetError(RuntimeException exception, Cache cache, Object key) {
    log.info("Unable to get from cache " + cache.getName() + " : " + exception.getMessage());
    }

    @Override
    public void handleCachePutError(RuntimeException exception, Cache cache, Object key, Object value) {
        log.info("Unable to put into cache " + cache.getName() + " : " + exception.getMessage());
    }

    @Override
    public void handleCacheEvictError(RuntimeException exception, Cache cache, Object key) {
        log.info("Unable to evict from cache " + cache.getName() + " : " + exception.getMessage());
    }

    @Override
    public void handleCacheClearError(RuntimeException exception, Cache cache) {
        log.info("Unable to clean cache " + cache.getName() + " : " + exception.getMessage());
    }
}