update 优化 代码增加空判断与其他性能优化

This commit is contained in:
疯狂的狮子Li
2026-03-10 17:29:16 +08:00
parent 3df21f9ecb
commit f0e3d21d45
12 changed files with 96 additions and 19 deletions

View File

@@ -1,5 +1,6 @@
package org.dromara.common.core.service.impl;
import cn.hutool.core.collection.CollUtil;
import com.github.benmanes.caffeine.cache.Cache;
import org.apache.dubbo.config.annotation.DubboReference;
import org.dromara.common.core.constant.CacheConstants;
@@ -43,6 +44,9 @@ public class DictServiceImpl implements DictService {
List<RemoteDictDataVo> datas = (List<RemoteDictDataVo>) ceffeine.get(CacheConstants.SYS_DICT_KEY + "remote:" + dictType, k -> {
return remoteDictService.selectDictDataByType(dictType);
});
if (CollUtil.isEmpty(datas)) {
return StringUtils.EMPTY;
}
Map<String, String> map = StreamUtils.toMap(datas, RemoteDictDataVo::getDictValue, RemoteDictDataVo::getDictLabel);
if (StringUtils.containsAny(dictValue, separator)) {
return Arrays.stream(dictValue.split(separator))
@@ -68,6 +72,9 @@ public class DictServiceImpl implements DictService {
List<RemoteDictDataVo> datas = (List<RemoteDictDataVo>) ceffeine.get(CacheConstants.SYS_DICT_KEY + "remote:" + dictType, k -> {
return remoteDictService.selectDictDataByType(dictType);
});
if (CollUtil.isEmpty(datas)) {
return StringUtils.EMPTY;
}
Map<String, String> map = StreamUtils.toMap(datas, RemoteDictDataVo::getDictLabel, RemoteDictDataVo::getDictValue);
if (StringUtils.containsAny(dictLabel, separator)) {
return Arrays.stream(dictLabel.split(separator))
@@ -87,6 +94,9 @@ public class DictServiceImpl implements DictService {
@Override
public Map<String, String> getAllDictByDictType(String dictType) {
List<RemoteDictDataVo> list = remoteDictService.selectDictDataByType(dictType);
if (CollUtil.isEmpty(list)) {
return new HashMap<>();
}
// 保证顺序
LinkedHashMap<String, String> map = new LinkedHashMap<>();
for (RemoteDictDataVo vo : list) {