博主备忘——HashOperations实战用法

DBC 1.2K 0
温馨提示

一种最简单的使用方法,更复杂的请看博主下面的redis购物车核心

    /**
     * 获取完整类型列表
     */
    public String getDictionaryMap(Integer type) {


        String key = DICTIONARIES;
        HashOperations<String,Integer,String> hashOperations = redisTemplate.opsForHash();

        if (!redisTemplate.hasKey(DICTIONARIES)){
            List<ProjectTypeDictionaryDO> projectTypeDictionaryDOList = projectTypeDictionaryMapper.selectList(new QueryWrapper<ProjectTypeDictionaryDO>());
            if (ArrayUtil.isEmpty(projectTypeDictionaryDOList)) {
                throw new DefaultException("无数据",ResponseEnum.INTERNAL_SERVER_ERROR);
            }

            Map projectTypeMap = projectTypeDictionaryDOList.stream().collect
                    (Collectors.toMap(obj-> obj.getId(), ProjectTypeDictionaryDO::getTypeName));

            hashOperations.putAll(DICTIONARIES,projectTypeMap);
            redisTemplate.expire(DICTIONARIES,10,TimeUnit.SECONDS);
        }

        return hashOperations.get(key,type);

    }

发表评论 取消回复
表情 图片 链接 代码

分享