Commit 3284549b authored by duanruiming's avatar duanruiming

[update] 微观大数据平台-缓存优化

parent 9a03ecfb
...@@ -5,11 +5,11 @@ import net.wanji.databus.dao.mapper.BaseCrossInfoMapper; ...@@ -5,11 +5,11 @@ import net.wanji.databus.dao.mapper.BaseCrossInfoMapper;
import net.wanji.databus.po.BaseCrossInfoPO; import net.wanji.databus.po.BaseCrossInfoPO;
import net.wanji.databus.vo.CrossInfoVO; import net.wanji.databus.vo.CrossInfoVO;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.CommandLineRunner; import org.springframework.boot.CommandLineRunner;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import org.springframework.util.CollectionUtils; import org.springframework.util.CollectionUtils;
import javax.annotation.Resource;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.stream.Collectors; import java.util.stream.Collectors;
...@@ -22,7 +22,7 @@ import java.util.stream.Collectors; ...@@ -22,7 +22,7 @@ import java.util.stream.Collectors;
@Slf4j @Slf4j
public class BaseCrossInfoCache implements CommandLineRunner { public class BaseCrossInfoCache implements CommandLineRunner {
@Autowired @Resource
private BaseCrossInfoMapper baseCrossInfoMapper; private BaseCrossInfoMapper baseCrossInfoMapper;
private static final List<BaseCrossInfoPO> crossInfoList = new ArrayList<>(); private static final List<BaseCrossInfoPO> crossInfoList = new ArrayList<>();
...@@ -54,8 +54,7 @@ public class BaseCrossInfoCache implements CommandLineRunner { ...@@ -54,8 +54,7 @@ public class BaseCrossInfoCache implements CommandLineRunner {
* @return * @return
*/ */
public List<String> getIsSignalCrossIdList() { public List<String> getIsSignalCrossIdList() {
List<String> isSignalCrossIdList = crossInfoList.stream().filter(crossInfoPO -> crossInfoPO.getIsSignal() == 1).map(BaseCrossInfoPO::getId).collect(Collectors.toList()); return crossInfoList.stream().filter(crossInfoPO -> crossInfoPO.getIsSignal() == 1).map(BaseCrossInfoPO::getId).collect(Collectors.toList());
return isSignalCrossIdList;
} }
public String getCrossName(String crossId) { public String getCrossName(String crossId) {
......
...@@ -29,7 +29,7 @@ public class BaseCrossPhaseInfoCache implements CommandLineRunner { ...@@ -29,7 +29,7 @@ public class BaseCrossPhaseInfoCache implements CommandLineRunner {
* 路口相位缓存 * 路口相位缓存
* key:crossId value:List<CrossPhasePO> * key:crossId value:List<CrossPhasePO>
*/ */
private static Map<String, List<CrossPhasePO>> crossPhaseInfoMap = new HashMap<>(); private static final Map<String, List<CrossPhasePO>> crossPhaseInfoMap = new HashMap<>();
/** /**
* 获取所有路口相位列表 * 获取所有路口相位列表
...@@ -48,14 +48,7 @@ public class BaseCrossPhaseInfoCache implements CommandLineRunner { ...@@ -48,14 +48,7 @@ public class BaseCrossPhaseInfoCache implements CommandLineRunner {
if (!crossPhaseInfoMap.isEmpty()) { if (!crossPhaseInfoMap.isEmpty()) {
return crossPhaseInfoMap.get(crossId); return crossPhaseInfoMap.get(crossId);
} }
return Collections.EMPTY_LIST; return Collections.emptyList();
}
/**
* 刷新缓存
*/
public void refresh() {
init();
} }
@Override @Override
...@@ -66,7 +59,7 @@ public class BaseCrossPhaseInfoCache implements CommandLineRunner { ...@@ -66,7 +59,7 @@ public class BaseCrossPhaseInfoCache implements CommandLineRunner {
public void init() { public void init() {
List<CrossPhasePO> crossPhasePOS = baseCrossPhaseMapper.listCrossPhasePO(new CrossPhasePO()); List<CrossPhasePO> crossPhasePOS = baseCrossPhaseMapper.listCrossPhasePO(new CrossPhasePO());
if (!CollectionUtils.isEmpty(crossPhasePOS)) { if (!CollectionUtils.isEmpty(crossPhasePOS)) {
crossPhaseInfoMap = crossPhasePOS.stream().collect(Collectors.groupingBy(CrossPhasePO::getCrossId)); crossPhaseInfoMap.putAll(crossPhasePOS.stream().collect(Collectors.groupingBy(CrossPhasePO::getCrossId)));
} }
} }
} }
...@@ -27,7 +27,7 @@ public class BaseCrossSchemeInfoCache implements CommandLineRunner { ...@@ -27,7 +27,7 @@ public class BaseCrossSchemeInfoCache implements CommandLineRunner {
/** /**
* key:crossId_id value:CrossSchemePO * key:crossId_id value:CrossSchemePO
*/ */
private static Map<String, BaseCrossSchemePO> crossSchemeInfoMap = new HashMap<>(); private static final Map<String, BaseCrossSchemePO> crossSchemeInfoMap = new HashMap<>();
/** /**
* 获取所有路口方案信息 * 获取所有路口方案信息
...@@ -49,13 +49,6 @@ public class BaseCrossSchemeInfoCache implements CommandLineRunner { ...@@ -49,13 +49,6 @@ public class BaseCrossSchemeInfoCache implements CommandLineRunner {
return null; return null;
} }
/**
* 刷新缓存
*/
public void refresh() {
init();
}
@Override @Override
public void run(String... args) throws Exception { public void run(String... args) throws Exception {
init(); init();
......
...@@ -26,7 +26,7 @@ import java.util.stream.Collectors; ...@@ -26,7 +26,7 @@ import java.util.stream.Collectors;
@Slf4j @Slf4j
public class CrossDirTurnPhaseCache implements CommandLineRunner { public class CrossDirTurnPhaseCache implements CommandLineRunner {
private static Map<String, CrossPhaseDTO> phaseMap = new HashMap<>(); private static final Map<String, CrossPhaseDTO> phaseMap = new HashMap<>();
@Resource @Resource
CrossSchedulesService crossSchedulesService; CrossSchedulesService crossSchedulesService;
......
...@@ -26,7 +26,7 @@ public class CrossRidInfoCache implements CommandLineRunner { ...@@ -26,7 +26,7 @@ public class CrossRidInfoCache implements CommandLineRunner {
@Resource @Resource
RidInfoMapper ridInfoMapper; RidInfoMapper ridInfoMapper;
private static List<RidInfoEntity> ridInfoList = new ArrayList<>(); private static final List<RidInfoEntity> ridInfoList = new ArrayList<>();
/** /**
* 获取所有路口关联列表 * 获取所有路口关联列表
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment