Browse Source

fix[litemall-wx]: 采用ConcurrentHashMap

Junling Bu 6 years ago
parent
commit
bfc6e15862

+ 2 - 1
litemall-wx-api/src/main/java/org/linlinjava/litemall/wx/service/CaptchaCodeManager.java

@@ -5,12 +5,13 @@ import org.linlinjava.litemall.wx.dto.CaptchaItem;
 import java.time.LocalDateTime;
 import java.util.HashMap;
 import java.util.Map;
+import java.util.concurrent.ConcurrentHashMap;
 
 /**
  * 缓存系统中的验证码
  */
 public class CaptchaCodeManager {
-    private static Map<String, CaptchaItem> captchaCodeCache = new HashMap<>();
+    private static ConcurrentHashMap<String, CaptchaItem> captchaCodeCache = new ConcurrentHashMap<>();
 
     /**
      * 添加到缓存

+ 3 - 2
litemall-wx-api/src/main/java/org/linlinjava/litemall/wx/service/HomeCacheManager.java

@@ -3,6 +3,7 @@ package org.linlinjava.litemall.wx.service;
 import java.time.LocalDateTime;
 import java.util.HashMap;
 import java.util.Map;
+import java.util.concurrent.ConcurrentHashMap;
 
 /**
  * 简单缓存的数据
@@ -13,7 +14,7 @@ public class HomeCacheManager {
     public static final String CATALOG = "catalog";
     public static final String GOODS = "goods";
 
-    private static Map<String, Map<String, Object>> cacheDataList = new HashMap<>();
+    private static ConcurrentHashMap<String, Map<String, Object>> cacheDataList = new ConcurrentHashMap<>();
 
     /**
      * 缓存首页数据
@@ -66,7 +67,7 @@ public class HomeCacheManager {
      * 清除所有缓存
      */
     public static void clearAll() {
-        cacheDataList = new HashMap<>();
+        cacheDataList = new ConcurrentHashMap<>();
     }
 
     /**