fix:前后端交互优化

This commit is contained in:
zhongzb
2023-06-18 23:52:50 +08:00
parent b22f905014
commit 536ee9dec7
2 changed files with 2 additions and 0 deletions

View File

@@ -35,6 +35,7 @@ public abstract class AbstractRedisStringCache<IN, OUT> implements BatchCache<IN
@Override @Override
public Map<IN, OUT> getBatch(List<IN> req) { public Map<IN, OUT> getBatch(List<IN> req) {
req = req.stream().distinct().collect(Collectors.toList());
List<String> keys = req.stream().map(this::getKey).collect(Collectors.toList()); List<String> keys = req.stream().map(this::getKey).collect(Collectors.toList());
List<OUT> valueList = RedisUtils.mget(keys, outClass); List<OUT> valueList = RedisUtils.mget(keys, outClass);
List<IN> loadReqs = new ArrayList<>(); List<IN> loadReqs = new ArrayList<>();

View File

@@ -146,6 +146,7 @@ public class UserServiceImpl implements UserService {
return req.getReqList() return req.getReqList()
.stream() .stream()
.map(a -> batch.containsKey(a.getUid()) ? batch.get(a.getUid()) : SummeryInfoDTO.skip(a.getUid())) .map(a -> batch.containsKey(a.getUid()) ? batch.get(a.getUid()) : SummeryInfoDTO.skip(a.getUid()))
.filter(Objects::nonNull)
.collect(Collectors.toList()); .collect(Collectors.toList());
} }