RedisTemplate操作hash数据类型示例
生活随笔
收集整理的這篇文章主要介紹了
RedisTemplate操作hash数据类型示例
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
@Autowiredprivate RedisTemplate redisTemplate;/*** 定時任務*/@Transactionalpublic void generateDispatcherPlanBak() {String hashKey ="DISPATCHER_GENERATE_KEY:PLAN";SimpleDateFormat f = new SimpleDateFormat("yyyy-MM-dd");for (int i = 0; i < 10; i++) {String d = f.format(DateUtils.addDays(new Date(), i));//2020-01-14List<DriverDispatcherVO> dispatchers = driverDispatcherDao.getDispatchers(new DriverDispatcherVO(dateToWeek(d, f)));//星期二if (!CollectionUtils.isEmpty(dispatchers)) {// dispatchers.stream().distinct();dispatchers.forEach(dispatcher -> {//判斷當前線路當前日期是否已經生成過出班,已經生成過的直接跳過,沒有生成的根據排班表來生成StringBuilder sb = new StringBuilder();String key = sb.append(dispatcher.getLineId().toString()).append(d).append(dispatcher.getStartTime()).append(dispatcher.getEndTime()).toString();String value = redisTemplate.opsForHash().get(hashKey,key).toString();if (value==null){Driver driver = driverService.getDriverForRedisById(dispatcher.getDriverId());if (driver!=null && driver.getState()== DriverStateEnum.NORMAL) {DispatcherPlanVO planVO = new DispatcherPlanVO();BeanUtils.copyProperties(dispatcher, planVO);planVO.setDay(d);setStartAndEndDateTime(planVO);planVO.setDriverName(driver.getName());planVO.setDriverPhone(driver.getTelephone());planVO.setVehicleNo(driver.getCar().getVehicleNo());planVO.setVehicleBrand(driver.getCar().getBrand());planVO.setVehicleColor(driver.getCar().getVehicleColor());planVO.setVehicleModel(driver.getCar().getVehicleModel());planVO.setSeats(Integer.parseInt(driver.getCar().getSeats()==null?"0":driver.getCar().getSeats()));planVO.setCarTypeId(driver.getCarTypeId());driverDispatcherDao.saveDispatcherPlan(planVO);}}});dispatchers.forEach(dispatcher->{StringBuilder sb = new StringBuilder();String key = sb.append(dispatcher.getLineId().toString()).append(d).append(dispatcher.getStartTime()).append(dispatcher.getEndTime()).toString();redisTemplate.opsForHash().put(hashKey,key,key);});}}}
?
總結
以上是生活随笔為你收集整理的RedisTemplate操作hash数据类型示例的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: jdk8 List集合 Stream d
- 下一篇: JVM 调优实战--使用jstack分析