今天遇到同事的一个问题,感觉很有代表性,写出来大家一块分析下。
代码如下:
@ResponseBody @RequestMapping( "/getMHotelIdsBySupplierId" ) public List<String> getCodeIdByType(@RequestParam ("type" )String type){ List<String> motelIds = xxxxx; return modelIds; }然后这个代码如果被别的action调用
public List<String> getCodeIdByType(){ List<String> codes = JSON.parseArray(getCodeIdByType("type").toString(),String.class); System.out.println(codes); }这个地方的错误是他感觉返回的东西是一个json,比如:["0010","11000"]这样的,但其实对象转json是在序列化的时候做的,这种普通的调用返回的并不是json对象。
getCodeIdByType("type").toString()其实是[0010,11000],然后List<String>的结果是10,11000。 最明显的感觉是00丢了,但不报错。
从这个地方来看,有很多地方做了兼容,导致这个错误隐藏的非常深,首先List的toString方法完了后是一个逗号分隔的数组,这个其实放到json里面就是一个数字的数组,另外一个json解析的时候,里面的元素不是字符串,但是它还是解析了,按照数字的数组进行了解析,即使参数里面给了String,也没有报错。
所以正确的做法,直接调用就好,当然了,结果不是我们关注的,问题产生的原因还是挺好玩的。
相关推荐
解决当内存资源不充足时大数据量的JSON文本解析为JSON对象会导致内存溢出的问题。 基于org.json的部分源代码,以及新增的JsonLazyer类。 原理:用时创建的规则降低传统解析器一次性将文本转成Java对象而占用大量内存...
pb11.5 + pbni解析、生成Json 解决之前版版本中文乱码问题,英文版win7测试, 简体中文、繁体中文、韩文都能正常解析显示
下面小编就为大家带来一篇读写json中文ASCII乱码问题的解决方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
json与labview常见相互转化,能解决大多json问题
JSON Viewer是一款非常实用的Json格式查看器。在日程开发调试中我们难免会遇到Json格式的数据需要解析阅读,但Json格式数据阅读性极差,而JSON Viewer绿色版不仅帮我们解决Json格式的阅读问题
JDK1.4工程下json解析包集合(内含6个jar包),可以解决项目工程在JDK1.4下对对象的JSON解析。亲测有效,希望能
Volley。fastJson解析网络Json ,多线程显示图片,简单缓存图片,万能适配器,完美解决图片排序混乱问题,完美解决图片多次加载问题
vs2003中没有序列化,所以解析json的时候只能截取字符串,这个类解决了截取字符串,可以直接调用,解析成json封装成Hashtable
主要介绍了Java Http请求传json数据乱码问题的解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
Swift 基于 Codable 的 JSON 解析库, 以解决 JSONDecoder 各种解析失败的问题, 支持自定义类型转换.
FsonFormat是一款Eclipse 插件,实现了一键解决复杂JSON ,快速实现JavaBean功能,提供开发人员和测试人员使用 FsonFormat是一款专为Eclipse打造的快速解析json的插件 1、根据Gson库使用的要求,将JSON结构格式解析...
下面小编就为大家带来一篇Json_decode 解析json字符串为NULL的解决方法(必看)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
C#接收Json格式数据,中文出现乱码解决方法
本文实例讲述了Android读取本地json文件的方法。分享给大家供大家参考,具体如下: 1、读取本地JSON ,但是显示汉字乱码 public static String readLocalJson(Context context, String fileName){ String json...
PB写的对JSON数据格式的控制,解决WEB上rest接口问题
如下sql,JSON_OBJECT函数中存在CAST函数,随后报出ParseException问题! SELECT JSON_ARRAYAGG(obj) FROM (SELECT trt.relevance_id,JSON_OBJECT('id',CAST(trt.id AS CHAR),'taskName',trt.task_name,'openStatus'...
本Demo主要针对jquery的$.getJSON操作,返回json, 针对传参出现的中文乱码, json里出现中文乱码。
配置IIS支持解析json格式的文件解决jquery-easyui的json在iis服务器不显示数据
近来对读取器的功能有新的理解,再次利用读取器实现 JSON解析。 感觉效果不错,解决了之前的一些问题。 运行环境:clisp 2.49 附: ;json convert ;WHJ.20200510 ;[ok1,ok2,OK3] ;{ok:1,ok2:2,ok3:3} ;[{ok:1,ok2...