RedisService.java 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182
  1. package com.macro.mall.common.service;
  2. import java.util.List;
  3. import java.util.Map;
  4. import java.util.Set;
  5. /**
  6. * redis操作Service
  7. * Created by macro on 2020/3/3.
  8. */
  9. public interface RedisService {
  10. /**
  11. * 保存属性
  12. */
  13. void set(String key, Object value, long time);
  14. /**
  15. * 保存属性
  16. */
  17. void set(String key, Object value);
  18. /**
  19. * 获取属性
  20. */
  21. Object get(String key);
  22. /**
  23. * 删除属性
  24. */
  25. Boolean del(String key);
  26. /**
  27. * 批量删除属性
  28. */
  29. Long del(List<String> keys);
  30. /**
  31. * 设置过期时间
  32. */
  33. Boolean expire(String key, long time);
  34. /**
  35. * 获取过期时间
  36. */
  37. Long getExpire(String key);
  38. /**
  39. * 判断是否有该属性
  40. */
  41. Boolean hasKey(String key);
  42. /**
  43. * 按delta递增
  44. */
  45. Long incr(String key, long delta);
  46. /**
  47. * 按delta递减
  48. */
  49. Long decr(String key, long delta);
  50. /**
  51. * 获取Hash结构中的属性
  52. */
  53. Object hGet(String key, String hashKey);
  54. /**
  55. * 向Hash结构中放入一个属性
  56. */
  57. Boolean hSet(String key, String hashKey, Object value, long time);
  58. /**
  59. * 向Hash结构中放入一个属性
  60. */
  61. void hSet(String key, String hashKey, Object value);
  62. /**
  63. * 直接获取整个Hash结构
  64. */
  65. Map<Object, Object> hGetAll(String key);
  66. /**
  67. * 直接设置整个Hash结构
  68. */
  69. Boolean hSetAll(String key, Map<String, Object> map, long time);
  70. /**
  71. * 直接设置整个Hash结构
  72. */
  73. void hSetAll(String key, Map<String, ?> map);
  74. /**
  75. * 删除Hash结构中的属性
  76. */
  77. void hDel(String key, Object... hashKey);
  78. /**
  79. * 判断Hash结构中是否有该属性
  80. */
  81. Boolean hHasKey(String key, String hashKey);
  82. /**
  83. * Hash结构中属性递增
  84. */
  85. Long hIncr(String key, String hashKey, Long delta);
  86. /**
  87. * Hash结构中属性递减
  88. */
  89. Long hDecr(String key, String hashKey, Long delta);
  90. /**
  91. * 获取Set结构
  92. */
  93. Set<Object> sMembers(String key);
  94. /**
  95. * 向Set结构中添加属性
  96. */
  97. Long sAdd(String key, Object... values);
  98. /**
  99. * 向Set结构中添加属性
  100. */
  101. Long sAdd(String key, long time, Object... values);
  102. /**
  103. * 是否为Set中的属性
  104. */
  105. Boolean sIsMember(String key, Object value);
  106. /**
  107. * 获取Set结构的长度
  108. */
  109. Long sSize(String key);
  110. /**
  111. * 删除Set结构中的属性
  112. */
  113. Long sRemove(String key, Object... values);
  114. /**
  115. * 获取List结构中的属性
  116. */
  117. List<Object> lRange(String key, long start, long end);
  118. /**
  119. * 获取List结构的长度
  120. */
  121. Long lSize(String key);
  122. /**
  123. * 根据索引获取List中的属性
  124. */
  125. Object lIndex(String key, long index);
  126. /**
  127. * 向List结构中添加属性
  128. */
  129. Long lPush(String key, Object value);
  130. /**
  131. * 向List结构中添加属性
  132. */
  133. Long lPush(String key, Object value, long time);
  134. /**
  135. * 向List结构中批量添加属性
  136. */
  137. Long lPushAll(String key, Object... values);
  138. /**
  139. * 向List结构中批量添加属性
  140. */
  141. Long lPushAll(String key, Long time, Object... values);
  142. /**
  143. * 从List结构中移除属性
  144. */
  145. Long lRemove(String key, long count, Object value);
  146. }