RedisCacheUtils.java 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. package nju.seec.helper.util;
  2. import org.springframework.data.redis.core.RedisTemplate;
  3. import org.springframework.stereotype.Component;
  4. import sun.reflect.generics.reflectiveObjects.NotImplementedException;
  5. import java.util.List;
  6. import java.util.concurrent.TimeUnit;
  7. import java.util.stream.Collectors;
  8. /**
  9. * use redis
  10. *
  11. * @author cst
  12. */
  13. @Component
  14. public class RedisCacheUtils {
  15. private final RedisTemplate<String, String> redisTemplate;
  16. public RedisCacheUtils(RedisTemplate<String, String> redisTemplate) {
  17. this.redisTemplate = redisTemplate;
  18. }
  19. public void set(String cacheName, String key, String value, long expireTime, TimeUnit timeUnit) {
  20. redisTemplate.opsForValue().set(cacheName + ":" + key, value, expireTime, timeUnit);
  21. }
  22. public void setAll(String cacheName, String key, String value, long expireTime, TimeUnit timeUnit) {
  23. throw new NotImplementedException();
  24. }
  25. public String get(String cacheName, String key) {
  26. return redisTemplate.opsForValue().get(cacheName + ":" + key);
  27. }
  28. public List<String> multiGet(String cacheName, List<String> keys) {
  29. List<String> body = keys.stream().map(s -> cacheName + ":" + s).collect(Collectors.toList());
  30. return redisTemplate.opsForValue().multiGet(body);
  31. }
  32. public void remove(String cacheName, String key) {
  33. redisTemplate.delete(cacheName + ":" + key);
  34. }
  35. }