Map转为String

好久不见. 提交于 2019-11-27 05:15:38

最近在做redis缓存时,需要将一个Map<String,Object>的对象转换为String对象存入redis,用的时候需从redis中取出来后并转为Map<String,Objcet>对象。

之前的做法直接就是Map对象的toString()存入redis,后面取出是就是用再转换为Map.

String转换为:JSONObject jsonobject = JSONObject.fromObject(str);
                rMap = (Map<String, Object>) jsonobject;

今天之前一切运行正常,本地还有服务器都测试过没问题,但是今天却报错了:

仔细排除原因发现不能直接将Map对象的toString()存入redis,而是应该转换为JsonObject后再调用toString()后存入redis,就正常了,多么不可思议又理所当然!

附:

    Map<String,Object> map=new HashMap<String,Object>();

    map.put("fff","fff");

   System.out.println(map.toString());

  JSONObject jsonObject=JSONObject.fromObject(map);

  System.out.println(jsonObject.toString());

输出的结果如下:

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!