管道基础大数据平台系统开发-【后端】-Server
1
sws
2022-11-26 ab849f796bdc17236a95ea5fe5c166fb8f24a75c
src/main/java/com/lf/server/service/all/RedisService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,96 @@
package com.lf.server.service.all;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Service;
import java.util.Set;
import java.util.concurrent.TimeUnit;
/**
 * Redis服务类
 * @author WWW
 */
@Service("redisService")
public class RedisService {
    @Autowired
    private RedisTemplate<String, Object> redisTemplate;
    /**
     * èŽ·å–Redis模板
     *
     * @return
     */
    public RedisTemplate<String, Object> getRedisTemplate() {
        return redisTemplate;
    }
    /**
     * è®¾ç½®å€¼åˆ°redis中
     *
     * @param key   é”®
     * @param value å€¼
     */
    public void put(String key, Object value) {
        redisTemplate.opsForValue().set(key, value);
    }
    /**
     * è®¾ç½®å€¼åˆ°redis中,并设置过期时间
     *
     * @param key     é”®
     * @param value   å€¼
     * @param timeout æ—¶é—´
     * @param unit    å•位
     */
    public void put(String key, Object value, long timeout, TimeUnit unit) {
        redisTemplate.opsForValue().set(key, value, timeout, unit);
    }
    /**
     * æ ¹æ®key获取value
     *
     * @param key é”®
     * @return
     */
    public Object get(String key) {
        return redisTemplate.opsForValue().get(key);
    }
    /**
     * æ˜¯å¦å­˜åœ¨key
     *
     * @param key é”®
     * @return
     */
    public boolean hasKey(String key) {
        return redisTemplate.hasKey(key);
    }
    /**
     * ç§»é™¤key
     *
     * @param key é”®
     */
    public void delete(String key) {
        redisTemplate.delete(key);
    }
    /**
     * æ¸…空指定键前缀
     *
     * @param subKeyString é”®å‰ç¼€
     */
    public void clearKeys(String subKeyString) {
        Set<String> keys = redisTemplate.keys(subKeyString + "*");
        redisTemplate.delete(keys);
    }
    /**
     * æ¸…空所有
     */
    public void clearAll() {
        Set<String> keys = redisTemplate.keys("*");
        redisTemplate.delete(keys);
    }
}