cc
2021-10-19 73cd66f49ca2261449b85fb6bdcd2439031d8fd8
提交 | 用户 | age
f3ad4b 1 package com.hx.redis;
C 2
3 import org.springframework.data.redis.core.RedisTemplate;
4 import org.springframework.stereotype.Component;
5
6 import javax.annotation.Resource;
7 import java.util.concurrent.TimeUnit;
8
9
10 /** 文件处理工具
11  * @author wangrenhuang
12  * @Date 2021-10-19
13  */
14 @Component
15 public class RedisUtil {
16     /**
17      * [redis]
18      */
19     @Resource
20     private RedisTemplate<String, Object> redisTemplate;
21
22
23
24     /**
25      * [判断key是否存在]
26      * @param key 键
27      * @return true 存在 false不存在
28      */
29     public boolean hasKey(String key) {
30         try {
31             return redisTemplate.hasKey(key);
32         } catch (Exception e) {
33             return false;
34         }
35     }
36
37     /**
38      * [普通缓存获取]
39      * @param key 键
40      * @return 值
41      */
42     public Object get(String key) {
43         return key == null ? null : redisTemplate.opsForValue().get(key);
44     }
45     /**
46      * [普通缓存删除]
47      * @param key 键
48      * @return 值
49      */
50     public boolean delete(String key) {
51         try {
52             Boolean aBoolean = redisTemplate.hasKey(key);
53             return aBoolean == false ? true : redisTemplate.delete(key);
54         }catch (Exception e){
55             return false;
56         }
57     }
58     /**
59      * [普通缓存放入]
60      * @param key 键
61      * @param value 值
62      * @return true成功 false失败
63      */
64     public boolean set(String key, Object value) {
65         try {
66             redisTemplate.opsForValue().set(key, value);
67             return true;
68         } catch (Exception e) {
69             return false;
70         }
71     }
72
73
74     /**
75      * 普通缓存放入并设置时间
76      * @param key 键
77      * @param value 值
78      * @param time 时间(秒) time要大于0 如果time小于等于0 将设置无限期
79      * @return true成功 false 失败
80      */
81     public boolean set(String key, Object value, long time) {
82         try {
83             if (time > 0) {
84                 redisTemplate.opsForValue().set(key, value, time, TimeUnit.SECONDS);
85             } else {
86                 set(key, value);
87             }
88             return true;
89         } catch (Exception e) {
90             e.printStackTrace();
91             return false;
92         }
93     }
94
95 }
96