puzhibing
2023-10-08 22199bbdda579861736420fe26c2873ab0f5d21c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
package com.sinata.modular.system.service.impl;
 
import com.sinata.modular.system.service.RedisTemplateService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Service;
 
import java.util.Collection;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.concurrent.TimeUnit;
 
/**
 * redis工具接口实现类
 * @author koting
 */
@Service
public class RedisTemplateServiceImpl implements RedisTemplateService {
 
    @Autowired
    private RedisTemplate<String, String> redisTemplate;
 
    @Override
    public void deleteFromRedis(String key) {
        redisTemplate.delete(key);
    }
 
    @Override
    public Boolean hashCheckHxists(String mapName, String field) {
        return redisTemplate.opsForHash().hasKey(mapName, field);
    }
 
    @Override
    public Object hashGet(String tableName, String hashKey) {
        return redisTemplate.opsForHash().get(tableName, hashKey);
    }
 
    @Override
    public void putAll(String key, Map<String,Object> map) {
        redisTemplate.opsForHash().putAll(key,map);
    }
 
    @Override
    public Map<Object, Object> hashGetAll(String key) {
        return  redisTemplate.opsForHash().entries(key);
    }
 
    @Override
    public Long hashIncrementLongOfHashMap(String hKey, String hashKey, Long delta) {
        return redisTemplate.opsForHash().increment(hKey, hashKey, delta);
    }
 
    @Override
    public Double hashIncrementDoubleOfHashMap(String hKey, String hashKey, Double delta) {
        return redisTemplate.opsForHash().increment(hKey, hashKey, delta);
    }
 
    @Override
    public void hashPushHashMap(String key, Object hashKey, Object value) {
        redisTemplate.opsForHash().put(key, hashKey, value);
    }
 
    @Override
    public Set<Object> hashGetAllHashKey(String key) {
        return redisTemplate.opsForHash().keys(key);
    }
 
    @Override
    public List<Object> multiGet(String key, Collection<Object> hashKeys) {
        return redisTemplate.opsForHash().multiGet(key, hashKeys);
    }
 
    @Override
    public Long hashGetHashMapSize(String key) {
        return redisTemplate.opsForHash().size(key);
    }
 
    @Override
    public List<Object> hashGetHashAllValues(String key) {
        return redisTemplate.opsForHash().values(key);
    }
 
    @Override
    public Long hashDeleteHashKey(String key, Object... hashKeys) {
        return redisTemplate.opsForHash().delete(key, hashKeys);
    }
 
    @Override
    public void listLeftPushList(String key, String value) {
        redisTemplate.opsForList().leftPush(key, value);
    }
 
    @Override
    public String listLeftPopList(String key) {
        return redisTemplate.opsForList().leftPop(key);
    }
 
 
    @Override
    public Long leftPushAll(String key, Collection<String> collection) {
        return redisTemplate.opsForList().leftPushAll(key, collection);
    }
 
    @Override
    public Long rightPushAll(String key, Collection<String> collection) {
        return redisTemplate.opsForList().rightPushAll(key, collection);
    }
 
    @Override
    public Long listSize(String key) {
        return redisTemplate.opsForList().size(key);
    }
 
    @Override
    public List<String> listRangeList(String key, Long start, Long end) {
        return redisTemplate.opsForList().range(key, start, end);
    }
 
    @Override
    public Long listRemoveFromList(String key, long i, Object value) {
        return redisTemplate.opsForList().remove(key, i, value);
    }
 
    @Override
    public String listIndexFromList(String key, long index) {
        return redisTemplate.opsForList().index(key, index);
    }
 
    @Override
    public void listSetValueToList(String key, long index, String value) {
        redisTemplate.opsForList().set(key, index, value);
    }
 
    @Override
    public void listTrimByRange(String key, Long start, Long end) {
        redisTemplate.opsForList().trim(key, start, end);
    }
 
    @Override
    public void listRightPushList(String key, String value) {
        redisTemplate.opsForList().rightPush(key, value);
    }
 
    @Override
    public String listRightPopList(String key) {
        return redisTemplate.opsForList().rightPop(key);
    }
 
    @Override
    public Long setAddSetMap(String key, String... values) {
        return redisTemplate.opsForSet().add(key, values);
    }
 
    @Override
    public Long setGetSizeForSetMap(String key) {
        return redisTemplate.opsForSet().size(key);
    }
 
    @Override
    public Long removeSet(String key,String... var) {
        return redisTemplate.opsForSet().remove(key, var);
    }
 
    @Override
    public Set<String> setGetMemberOfSetMap(String key) {
        return redisTemplate.opsForSet().members(key);
    }
 
    @Override
    public Boolean setCheckIsMemberOfSet(String key, Object o) {
        return redisTemplate.opsForSet().isMember(key, o);
    }
 
    @Override
    public Integer stringAppendString(String key, String value) {
        return redisTemplate.opsForValue().append(key, value);
    }
 
    @Override
    public void stringMultiSet(Map<String, String> maps){
        redisTemplate.opsForValue().multiSet(maps);
    }
 
    @Override
    public List<String> stringMultiGet(Collection<String> keys){
        return redisTemplate.opsForValue().multiGet(keys);
    }
 
    @Override
    public String stringGetStringByKey(String key) {
        return  redisTemplate.opsForValue().get(key);
    }
 
    @Override
    public String stringGetSubStringFromString(String key, long start, long end) {
        return redisTemplate.opsForValue().get(key, start, end);
    }
 
    @Override
    public Long stringIncrementLongString(String key, Long delta) {
        return redisTemplate.opsForValue().increment(key, delta);
    }
 
    @Override
    public Double stringIncrementDoubleString(String key, Double delta) {
        return redisTemplate.opsForValue().increment(key, delta);
    }
 
    @Override
    public void stringSetString(String key, String value) {
        redisTemplate.opsForValue().set(key, value);
    }
 
    @Override
    public String stringGetAndSet(String key, String value) {
        return redisTemplate.opsForValue().getAndSet(key, value);
    }
 
    @Override
    public void stringSetValueAndExpireTime(String key, String value, long timeout) {
        redisTemplate.opsForValue().set(key, value, timeout, TimeUnit.MILLISECONDS);
    }
 
    @Override
    public Boolean setKeyExpireTime(String key, long timeout) {
        return redisTemplate.expire(key, timeout, TimeUnit.SECONDS);
    }
 
    public boolean set(String key, String  value) {
        try {
            redisTemplate.opsForValue().set(key, value);
            return true;
        } catch (Exception e) {
            e.printStackTrace();
            return false;
        }
    }
 
    /**
     * 读取缓存
     * @param key string key
     * @return T
     */
    @SuppressWarnings("unchecked")
    public <T> T get(String key) {
        return (T) redisTemplate.opsForValue().get(key);
    }
}