Преглед на файлове

优化批量获取Redis值逻辑;

woody преди 2 години
родител
ревизия
89745aa77d
променени са 1 файла, в които са добавени 4 реда и са изтрити 3 реда
  1. 4 3
      framework-redis/src/main/java/com/chelvc/framework/redis/util/RedisUtils.java

+ 4 - 3
framework-redis/src/main/java/com/chelvc/framework/redis/util/RedisUtils.java

@@ -557,11 +557,12 @@ public class RedisUtils implements ApplicationContextAware {
      * @param keys         键名称列表
      * @param keyAdapter   键适配器
      * @param valueAdapter 值适配器
+     * @param <K>          键类型
      * @param <V>          值类型
      * @return 锁名称/标识信息映射表
      */
-    public static <V> Map<String, V> get(List<String> keys, @NonNull Function<String, String> keyAdapter,
-                                         @NonNull Function<byte[], V> valueAdapter) {
+    public static <K, V> Map<K, V> get(List<String> keys, @NonNull Function<String, K> keyAdapter,
+                                       @NonNull Function<byte[], V> valueAdapter) {
         if (CollectionUtils.isEmpty(keys)) {
             return Collections.emptyMap();
         }
@@ -572,7 +573,7 @@ public class RedisUtils implements ApplicationContextAware {
             if (CollectionUtils.isEmpty(values)) {
                 return Collections.emptyMap();
             }
-            Map<String, V> mapping = Maps.newHashMapWithExpectedSize(keys.size());
+            Map<K, V> mapping = Maps.newHashMapWithExpectedSize(keys.size());
             for (int i = 0; i < keys.size(); i++) {
                 String key = keys.get(i);
                 byte[] bytes = values.get(i);