pipeline在实际项目中的应用

版权声明:可以转载,转载请注明出处~觉得读完有收获可以点个赞再走啊欢迎关注 https://blog.csdn.net/zhangzhaoyuan30/article/details/89204947
@RequestMapping(value = "/queryTotalData", method = RequestMethod.GET)
    public Result queryTotalData() {
        Long successNum = 0L;
        Long failNum = 0L;
        List<Object> list = redisTemplate.executePipelined(new SessionCallback<String>() {
            @Override
            public <K, V> String execute(RedisOperations<K, V> operations) throws DataAccessException {
                operations.opsForValue().get("success_num");
                operations.opsForValue().get("fail_num");
                return null;
            }
        });

        if (list.get(0) != null) {
            successNum = Long.parseLong((String) list.get(0));
        }
        if (list.get(1) != null) {
            failNum = Long.parseLong((String) list.get(1));
        }
        TotalDataVO dataVO = new TotalDataVO();
        dataVO.setSuccessNum(successNum);
        dataVO.setFailNum(failNum);
        dataVO.setTotalNum(successNum + failNum);

        NumberFormat format = NumberFormat.getPercentInstance();
        format.setMinimumFractionDigits(2);
        if (successNum + failNum != 0) {
            dataVO.setSuccessRate(format.format(successNum * 1.00 / (successNum + failNum)));
            dataVO.setFailRate(format.format(failNum * 1.00 / (successNum + failNum)));
        }
        return Result.success(dataVO, Common.MSG_QUERY);
    }

猜你喜欢

转载自blog.csdn.net/zhangzhaoyuan30/article/details/89204947