zoukankan      html  css  js  c++  java
  • java 将redis的数据批量取出来的时候遇到json格式转换异常

    需求:将数据存入redis 存放的数据结构是hash 现在需要把它批量取出

    批量取出的方式有很多,这里记录的是取出来以后数据反序列化成java实体时候的异常

    线上代码不贴,模拟该代码

      UserLoginParams userLoginParams = new UserLoginParams();
            userLoginParams.setDeviceId(1+"");
            userLoginParams.setPassword("123456");
            userLoginParams.setPhone(1+"");
           // Mono mono = userService.userLogin(userLoginParams);
    
            String s = JSON.toJSONString(userLoginParams);
    
            stringRedisTemplate.opsForHash().put("test1","1",s);
    
            Map<Object, Object> test = stringRedisTemplate.opsForHash().entries("test1");
    
            String o = (String) test.get("1");
    
            String s1 = JSON.toJSONString(o);
    
            UserLoginParams userLoginParams1 = JSON.parseObject(s1, UserLoginParams.class);
    

    运行结果 提示异常:

    com.alibaba.fastjson.JSONException: syntax error, expect {, actual string, pos 0, fastjson-version 1.2.51

    修改代码

      UserLoginParams userLoginParams = new UserLoginParams();
            userLoginParams.setDeviceId(1+"");
            userLoginParams.setPassword("123456");
            userLoginParams.setPhone(1+"");
            Mono mono = userService.userLogin(userLoginParams);
    
            String s = JSON.toJSONString(userLoginParams);
    
            stringRedisTemplate.opsForHash().put("test1","1",s);
    
            Map<Object, Object> test = stringRedisTemplate.opsForHash().entries("test1");
    
            String o = (String) test.get("1");
    
    
            UserLoginParams userLoginParams1 = JSON.parseObject(o, UserLoginParams.class);

    再次运行断点结果:

    没什么技术难点,就只是一个API的使用,在关于字符串转换的时候,经常可能会遇到字符串不能转成实体,或者字符串有很多转义字符的情况!!

  • 相关阅读:
    IOS 给一个文本框,按钮,view加虚线边框
    AFNetworking 使用  基础篇
    IOS——中级篇 --TableView以及Cell
    IOS中级篇 —— picKerView and DatePicKer
    IOS中级篇 ——自动布局 Autolayout  and  VFL
    IOS中级篇—— 多线程--NSOperation
    IOS中级篇 —— Autoresizing
    IOS中级篇 —— 字典转模型
    IOS中级篇 —— 关于深复制和浅复制
    IOS中级篇 —— 日期时间对象
  • 原文地址:https://www.cnblogs.com/920913cheng/p/15751928.html
Copyright © 2011-2022 走看看