一个极简轻量的java redis工具类

语言: CN / TW / HK

最近决定新开一个每期小窍门专栏, 向志同道合的朋友们互相分享一些小窍门, 小经验,

这一期, 给大家一个非常简单好用的redis工具类, 非常轻量, 砍掉了很多不必要的功能, 如果需要比如过期的相关功能, 私信或下方评论发送.

需要如下maven依赖, 如果用的其他的包管理工具, 也很容易找到, 都差不多的 xml <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency>

yml spring: redis: host: 127.0.0.1 port: 6379 jedis: pool: max-active: 8 max-wait: -1 max-idle: 500 min-idle: 0

工具类

```java import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.stereotype.Component;

import java.util.List;

@Component public class RedisUtil {

@Autowired
private RedisTemplate<Object, Object> redisTemplate;

public <E> void put(String key, E value) {
    redisTemplate.opsForValue().set(key, value);
}

public Boolean del(String key) {
    return redisTemplate.delete(key);
}

public <E> E getSingle(String key, Class<E> cls) {
    Object res = redisTemplate.opsForValue().get(key);
    return cast(res, cls);
}

public <E> List<E> getList(String key, Class<E> cls) {
    Object res = redisTemplate.opsForValue().get(key);
    return castList(res, cls);
}


@SuppressWarnings("unchecked")
private static <T> T cast(Object obj, Class<T> cls) {
    return (T) obj;
}


@SuppressWarnings("unchecked")
private static <T> List<T> castList(Object obj, Class<T> cls) {
    return (List<T>) obj;
}

} ```