博客变为论坛,修改编辑器为正常编辑器

This commit is contained in:
limqhz
2022-05-05 01:11:09 +08:00
parent f701baaf04
commit 69941133b8
28 changed files with 457 additions and 187 deletions

View File

@@ -19,7 +19,6 @@ import com.google.common.collect.Lists;
import com.google.common.collect.Sets;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.data.redis.connection.RedisConnection;
import org.springframework.data.redis.connection.RedisConnectionFactory;
import org.springframework.data.redis.core.*;
@@ -34,9 +33,9 @@ import java.util.concurrent.TimeUnit;
@Component
public class RedisUtils {
private static final Logger log = LoggerFactory.getLogger(RedisUtils.class);
private RedisTemplate<Object, Object> redisTemplate;
private StringRedisTemplate redisTemplate;
public RedisUtils(RedisTemplate<Object, Object> redisTemplate) {
public RedisUtils(StringRedisTemplate redisTemplate) {
this.redisTemplate = redisTemplate;
}
@@ -83,7 +82,7 @@ public class RedisUtils {
* @param key 键 不能为null
* @return 时间(秒) 返回0代表为永久有效
*/
public long getExpire(Object key) {
public long getExpire(String key) {
return redisTemplate.getExpire(key, TimeUnit.SECONDS);
}
@@ -96,7 +95,7 @@ public class RedisUtils {
public List<String> scan(String pattern) {
ScanOptions options = ScanOptions.scanOptions().match(pattern).build();
RedisConnectionFactory factory = redisTemplate.getConnectionFactory();
RedisConnection rc = Objects.requireNonNull(factory).getConnection();
RedisConnection rc = factory.getConnection();
Cursor<byte[]> cursor = rc.scan(options);
List<String> result = new ArrayList<>();
while (cursor.hasNext()) {
@@ -121,7 +120,7 @@ public class RedisUtils {
public List<String> findKeysForPage(String patternKey, int page, int size) {
ScanOptions options = ScanOptions.scanOptions().match(patternKey).build();
RedisConnectionFactory factory = redisTemplate.getConnectionFactory();
RedisConnection rc = Objects.requireNonNull(factory).getConnection();
RedisConnection rc = factory.getConnection();
Cursor<byte[]> cursor = rc.scan(options);
List<String> result = new ArrayList<>(size);
int tmpIndex = 0;
@@ -176,7 +175,7 @@ public class RedisUtils {
log.debug(new StringBuilder("删除缓存:").append(keys[0]).append(",结果:").append(result).toString());
log.debug("--------------------------------------------");
} else {
Set<Object> keySet = new HashSet<>();
Set<String> keySet = new HashSet<>();
for (String key : keys) {
keySet.addAll(redisTemplate.keys(key));
}
@@ -197,7 +196,7 @@ public class RedisUtils {
* @param key 键
* @return 值
*/
public Object get(String key) {
public String get(String key) {
return key == null ? null : redisTemplate.opsForValue().get(key);
}
@@ -207,7 +206,7 @@ public class RedisUtils {
* @param keys
* @return
*/
public List<Object> multiGet(List<String> keys) {
public List<String> multiGet(List<String> keys) {
List list = redisTemplate.opsForValue().multiGet(Sets.newHashSet(keys));
List resultList = Lists.newArrayList();
Optional.ofNullable(list).ifPresent(e-> list.forEach(ele-> Optional.ofNullable(ele).ifPresent(resultList::add)));
@@ -221,7 +220,7 @@ public class RedisUtils {
* @param value 值
* @return true成功 false失败
*/
public boolean set(String key, Object value) {
public boolean set(String key, String value) {
try {
redisTemplate.opsForValue().set(key, value);
return true;
@@ -239,7 +238,7 @@ public class RedisUtils {
* @param time 时间(秒) time要大于0 如果time小于等于0 将设置无限期
* @return true成功 false 失败
*/
public boolean set(String key, Object value, long time) {
public boolean set(String key, String value, long time) {
try {
if (time > 0) {
redisTemplate.opsForValue().set(key, value, time, TimeUnit.SECONDS);
@@ -262,7 +261,7 @@ public class RedisUtils {
* @param timeUnit 类型
* @return true成功 false 失败
*/
public boolean set(String key, Object value, long time, TimeUnit timeUnit) {
public boolean set(String key, String value, long time, TimeUnit timeUnit) {
try {
if (time > 0) {
redisTemplate.opsForValue().set(key, value, time, timeUnit);
@@ -307,7 +306,7 @@ public class RedisUtils {
* @param map 对应多个键值
* @return true 成功 false 失败
*/
public boolean hmset(String key, Map<String, Object> map) {
public boolean hmset(String key, Map<String, String> map) {
try {
redisTemplate.opsForHash().putAll(key, map);
return true;
@@ -325,7 +324,7 @@ public class RedisUtils {
* @param time 时间(秒)
* @return true成功 false失败
*/
public boolean hmset(String key, Map<String, Object> map, long time) {
public boolean hmset(String key, Map<String, String> map, long time) {
try {
redisTemplate.opsForHash().putAll(key, map);
if (time > 0) {
@@ -346,7 +345,7 @@ public class RedisUtils {
* @param value 值
* @return true 成功 false失败
*/
public boolean hset(String key, String item, Object value) {
public boolean hset(String key, String item, String value) {
try {
redisTemplate.opsForHash().put(key, item, value);
return true;
@@ -365,7 +364,7 @@ public class RedisUtils {
* @param time 时间(秒) 注意:如果已存在的hash表有时间,这里将会替换原有的时间
* @return true 成功 false失败
*/
public boolean hset(String key, String item, Object value, long time) {
public boolean hset(String key, String item, String value, long time) {
try {
redisTemplate.opsForHash().put(key, item, value);
if (time > 0) {
@@ -384,7 +383,7 @@ public class RedisUtils {
* @param key 键 不能为null
* @param item 项 可以使多个 不能为null
*/
public void hdel(String key, Object... item) {
public void hdel(String key, String... item) {
redisTemplate.opsForHash().delete(key, item);
}
@@ -431,7 +430,7 @@ public class RedisUtils {
* @param key 键
* @return
*/
public Set<Object> sGet(String key) {
public Set<String> sGet(String key) {
try {
return redisTemplate.opsForSet().members(key);
} catch (Exception e) {
@@ -447,7 +446,7 @@ public class RedisUtils {
* @param value 值
* @return true 存在 false不存在
*/
public boolean sHasKey(String key, Object value) {
public boolean sHasKey(String key, String value) {
try {
return redisTemplate.opsForSet().isMember(key, value);
} catch (Exception e) {
@@ -463,7 +462,7 @@ public class RedisUtils {
* @param values 值 可以是多个
* @return 成功个数
*/
public long sSet(String key, Object... values) {
public long sSet(String key, String... values) {
try {
return redisTemplate.opsForSet().add(key, values);
} catch (Exception e) {
@@ -480,7 +479,7 @@ public class RedisUtils {
* @param values 值 可以是多个
* @return 成功个数
*/
public long sSetAndTime(String key, long time, Object... values) {
public long sSetAndTime(String key, long time, String... values) {
try {
Long count = redisTemplate.opsForSet().add(key, values);
if (time > 0) {
@@ -515,7 +514,7 @@ public class RedisUtils {
* @param values 值 可以是多个
* @return 移除的个数
*/
public long setRemove(String key, Object... values) {
public long setRemove(String key, String... values) {
try {
Long count = redisTemplate.opsForSet().remove(key, values);
return count;
@@ -535,7 +534,7 @@ public class RedisUtils {
* @param end 结束 0 到 -1代表所有值
* @return
*/
public List<Object> lGet(String key, long start, long end) {
public List<String> lGet(String key, long start, long end) {
try {
return redisTemplate.opsForList().range(key, start, end);
} catch (Exception e) {
@@ -566,7 +565,7 @@ public class RedisUtils {
* @param index 索引 index>=0时 0 表头1 第二个元素依次类推index<0时-1表尾-2倒数第二个元素依次类推
* @return
*/
public Object lGetIndex(String key, long index) {
public String lGetIndex(String key, long index) {
try {
return redisTemplate.opsForList().index(key, index);
} catch (Exception e) {
@@ -582,7 +581,7 @@ public class RedisUtils {
* @param value 值
* @return
*/
public boolean lSet(String key, Object value) {
public boolean lSet(String key, String value) {
try {
redisTemplate.opsForList().rightPush(key, value);
return true;
@@ -600,7 +599,7 @@ public class RedisUtils {
* @param time 时间(秒)
* @return
*/
public boolean lSet(String key, Object value, long time) {
public boolean lSet(String key, String value, long time) {
try {
redisTemplate.opsForList().rightPush(key, value);
if (time > 0) {
@@ -620,7 +619,7 @@ public class RedisUtils {
* @param value 值
* @return
*/
public boolean lSet(String key, List<Object> value) {
public boolean lSet(String key, List<String> value) {
try {
redisTemplate.opsForList().rightPushAll(key, value);
return true;
@@ -638,7 +637,7 @@ public class RedisUtils {
* @param time 时间(秒)
* @return
*/
public boolean lSet(String key, List<Object> value, long time) {
public boolean lSet(String key, List<String> value, long time) {
try {
redisTemplate.opsForList().rightPushAll(key, value);
if (time > 0) {
@@ -659,7 +658,7 @@ public class RedisUtils {
* @param value 值
* @return /
*/
public boolean lUpdateIndex(String key, long index, Object value) {
public boolean lUpdateIndex(String key, long index, String value) {
try {
redisTemplate.opsForList().set(key, index, value);
return true;
@@ -677,7 +676,7 @@ public class RedisUtils {
* @param value 值
* @return 移除的个数
*/
public long lRemove(String key, long count, Object value) {
public long lRemove(String key, long count, String value) {
try {
return redisTemplate.opsForList().remove(key, count, value);
} catch (Exception e) {
@@ -691,7 +690,7 @@ public class RedisUtils {
* @param ids id
*/
public void delByKeys(String prefix, Set<Long> ids) {
Set<Object> keys = new HashSet<>();
Set<String> keys = new HashSet<>();
for (Long id : ids) {
keys.addAll(redisTemplate.keys(new StringBuffer(prefix).append(id).toString()));
}
@@ -702,4 +701,5 @@ public class RedisUtils {
log.debug("缓存删除数量:" + count + "");
log.debug("--------------------------------------------");
}
}