fastjson反序列化List问题出现了

最近是在使用fastjson时遇到了一个问题,一个前端JSON.stringify()生成的json串,在传给springMVC的controller之后,发现json串的属性顺序不同,会影响整个请求能否送达到controller。例如:{"list":"","time":"",name:"",member:""}这样的,是无法送到到controller的,控制台会提示“WARN org.springframework.web.servlet.mvc.support.DefaultHandlerExceptionResolver - Failed to read HTTP message: org.springframework.http.converter.HttpMessageNotReadableException: JSON parse error: not close json text, token : ,; nested exception is com.alibaba.fastjson.JSONException: not close json text, token : ,
”,但只需要保证list不出现在第一个属性,例如换成{"time":"","name":"","member":"","list":""},则可以正常送达到controller。

4个回答

不清楚java,如果是顺序问题导致的,那么客户端json属性名顺序得和controller的先后一致,JSON.stringify后不会更改json对象属性名称的先后

客户端json属性名顺序得和controller顺序一致

难道

 list

是关键字?

 {"list":"","time":"",name:"",member:""}

这一段完整的内容贴出来瞅瞅?

xp8283596
fanbufanya123 回复dabocaiqq: 报错已经很明显了" JSON parse error: not close json text, token : ,;",建议先把内容仔细检查一下
一年多之前 回复
dabocaiqq
请你们大家多多姿瓷我菠菜菌 不行。不会,还有别人回答么?高手都死绝了?
一年多之前 回复

因为fastjson是无序的,可以new一个LinkedHashMap

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
fastjson反序列化List问题
最近是在使用fastjson时遇到了一个问题,一个前端JSON.stringify()生成的json串,在传给springMVC的controller之后,发现json串的属性顺序不同,会影响整个请求能否送达到controller。例如:"list":"","time":"",name:"",member:""这样的,是无法送到到controller的,控制台会提示“[code=java]WARN org.springframework.web.servlet.mvc.support.DefaultHandlerExceptionResolver - Failed to read HTTP message: org.springframework.http.converter.HttpMessageNotReadableException: JSON parse error: not close json text, token : ,; nested exception is com.alibaba.fastjson.JSONException: not close json text, token : ,[/code]”,但只需要保证list不出现在第一个属性,例如换成"time":"","name":"","member":"","list":"",则可以正常送达到controller。rnPS:SpringMVC里使用了FastJsonHttpMessageConverter类进行消息处理rnPPS:这个问题的处理方式,可以在js里将list定义为array,然后生成的json串是:"list":[],"time":"","name":"","member":"",这种情况下,可以正常送达到controller,但方法找到了,原因还是没找到。。。
FastJson反序列化
[{"listA":[{"id":"fds","name":"张三"},{"id":"fds","name":"李四"}],"test":"432"}, {"listA":[{"id":"fds","name":"张三"},{"id":"fds","name":"李四"}],"test":"432"}] 数组里面封装数组的反序列化方法,通过两个bean,进行封装
fastjson 反序列化的问题
问题描述 将Message对象序列化后,反序列化失败。 response是序列化的结果,start为true,end为false。 message是反序列化后的对象,start和end都为false。 问题解决 1.资料查找 经过自己的初步debug后,并没有任何的头绪,所以google了一下网上的解决办法。 因为content正确反序...
fastjson反序列化
对于maven工程,要将json数据反序列化需要个步骤: 1、添加fastjson的依赖 com.alibaba fastjson 1.2.39 2、安装GsonFormat插件(以下是IntelliJ Idea安装GsonFormat,其它ide的可以自行百度怎么安装插件) file--》settings--》Plugins,在搜索框中输入Gson
java fastjson反序列化问题记录
远程请求数据时,经常用到json来传输数据,解析和传输都方便,一个单层简单都json串如下: { "name":"xiaoming", "age":16, "isBoy":true } 定义一个User类用于 序列化,和反序列化 我们的数据,但是最近遇到一个问题,特别记录一下: 比如:我定义了一个User类 有 name(String)  age(int) isBoy(Boo
FastJson 反序列化Dictionary
需要反序列化的Json为 "test1":0,"test2":"This is a test" ,这样既有int,也有string类型的,所以需要Dictionary类型,但在使用FastJson反序列化时,调用rnDictionary d = FastJson.Deserialize>(json); rn会报错 FormatException: failed read char ''. index = 10 text = "t1":0,"tes"rn想要的结果是rnd["test1"] = (int)0;rnd["test2"] = (string)"This is a test";rn请问怎样解决呢?感谢!!
Alibaba fastjson序列化/反序列化
所需要的依赖 <!--添加fastjson依赖--> <dependency> <groupId>com.alibaba</groupId>
Fastjson反序列化漏洞分析
1. 漏洞描述 漏洞简述: 2017年3月15日,fastjson官方主动爆出fastjson在1.2.24及之前版本存在远程代码执行高危安全漏洞。攻击者可以通过此漏洞远程执行恶意代码来入侵服务器。 影响版本: fastjson <= 1.2.24 2. 漏洞简介  java处理JSON数据有三个比较流行的类库,gson(google维护)、jackson、以及今天的主角fastjson,fastj
fastjson反序列化漏洞分析
fastjson反序列化漏洞
fastjson反序列化的时候报错
java.lang.VerifyError: (class: com/alibaba/fastjson/parser/deserializer/FastjsonASMDeserializer_2_类名, method: deserialze signature: (Lcom/alibaba/fastjson/parser/DefaultJSONParser;Ljava/lang/reflect/Ty
fastjson反序列化和webservice的理解
认识到你Controller里调用的webservice的方法,都不是直接的调用,其实在Impl类里进行了加工,返回对象 parseObject(jsonString)反序列化的过程是先看成员变量的set方法有没有@JsonField(name = "")的注解,没有的话,直接找成员变量(忽略首字母大小写,即首字母是大写,也可以匹配到小写的成员变量,序列化成功) 如果有该注解,则按该注解的na
springmvc fastjson 反序列化时间格式化
试了一下很多网上的方法,最后发现还是在实体类上面的日期字段加上如下注解,可以完成格式化操作,否则默认就都是时间戳的格式: @JSONField (format="yyyy-MM-dd HH:mm:ss") public Date birthday; @JSONField (format="yyyy-MM-dd HH:mm:ss") public Date birthday;
Fastjson反序列化漏洞
Fastjson反序列化漏洞 http://www.ifind.cc/view/231
fastjson使用(四) -- 反序列化
阿里开源JSON库fastjson的使用。
java之fastjson 反序列化
FastJson是一个java语言编写的高性能的json库。我呢不多做解释因为百度一大堆。我们需要知道的就是他提供了一些方法可以让我们对json格式的数据文件进行解析,也可以将我们自己的数据类型转换成json格式。下面进行实例:导入包在maven库内搜索即可找到包后我们将包添加到项目即可。string json=&quot;{&quot;rating&quot;:{&quot;max&quot;:10,&quot;numRaters&quot;:369,&quot;avera...
fastjson 反序列化 过滤属性
如题。fastjson在序列化的时候,可以过滤属性。但是在反序列化时,我找不到过滤不需要反序列化的方法。查看源代码也没有找到类似的方法。这是为什么呢?
fastjson自定义枚举反序列化
自定义的枚举类型反序列化 fastjson默认提供的对枚举类型的反序列化的方式有两种 根据枚举的name 根据枚举的ordinal值 但是如果需要通过自定义的值反序列化成枚举,就需要自定义反序列化器。 如下面枚举,我想通过EnumValue接口返回的value值进行反序列化 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 in...
Alibaba fastjson 序列化与反序列化
fastjson在官网的定义号称最小最快 多态的json序列化工具。fastjson采用独创的算法,将parse的速度提升到极致,超过所有json库,包括曾经号称最快的jackson。并且还超越了google的二进制协议protocol buf。JSON这个类是fastjson API的入口,主要的功能都通过这个类提供。下面是这个类的重要几个方法介绍:序列化APIpackage com.aliba
jackson 反序列化 list问题
String js="\"name\":\"xiaoming\",\"addr\":[\"addr\":\"zhanjian\",\"id\":\"1\",\"addr\":\"beijing\",\"aid\":\"2\"]";rn Test test=mapper.readValue(js, Test.class);rnrn运行这个的时候出现错误:Unexpected token (START_OBJECT), expected VALUE_STRING: need JSON String that contains type id (for subtype of java.util.List)rnrn这个是json要转换的对象rnpublic class Test implements Serializablernrn String name;rn List addr;rn 省略get setrnrnrnclass Addr implements Serializablernrn String addr;rn String aid;rn 省略get setrn
List反序列化问题
[code=C#]rn[XmlRootAttribute("StatChgNtfyReq")]rn public class StatChgNtfyReqrn rn public string CrtT get; set; rn public int PkgSeq get; set; rn public int ChgUserSum get; set; rn public List ChgUser get; set; rnrn rn [Serializable]rn public class ChgUserrn rn public string IDType get; set; rn public string IDValue get; set; rn public string NewIDValue get; set; rn public string UserStatus get; set; rn public string StatusChgTime get; set; rn public string StatusOprTime get; set; rn public string OtherStatus get; set; rnrn rn[/code]rn当我反序列化下面XML时[code=C#] StringReader srStatChgNtfyReq = new StringReader(cont);rnStatChgNtfyReq statChgNtfyReq = (StatChgNtfyReq)serializerStatChgNtfyReq.Deserialize(srStatChgNtfyReq);[/code]得到的statChgNtfyReq.ChgUser始终为0rn[code=XML]rn rn- rn Stringaaaaaaaa rn 1 rn 2 rn- rn St rn String rn String rn St rn Stringaaaaaaaa rn Stringaaaaaaaa rn St rn- rn Str rn String rn rn- rn Str rn String rn rn rn rn[/code]
反序列化List
NULL 博文链接:https://hw1287789687.iteye.com/blog/2289510
fastJson使用过程中出现的问题
在使用fastJSon的过程中出现的这个问题首先是 JSONObject object = JSON.parseObject(json); 解析服务器上获取到的json数据,大多数json正规的格式是以键值数组的形式传过来的,但是也有直接返回来一个对象的,此时就不能像往常那样去解析啦,只能解析相应的字段 如下形式即可: int total = object.getInteg
FastJson整形数据反序列化的坑
在开发过程中,遇到了一个json数据反序列化的坑,具体代码如下: 1 String viewValue = "..............."; #这里是json字符串 2 JSONObject viewObject = JSONObject.parseObject(viewValue); 3 JSONObject videoObject = (JSONObject) viewObject.g...
FastJson实现复杂对象序列化与反序列化
一.认识FastJson fastjson是目前java语言中最快的json库,比自称最快的jackson速度要快,第三方独立测试结果说明比gson快大约6倍 JSON帮助类 这个可以做一个实例研究代码,也可以作为一个工具类 去调用。 FastJson是一个Json处理工具包,包括“序列化”和“反序列化”两部分,Fastjson是一个Java语言编写的高性能功能完善的JSON库。 F
fastjson 复杂json 序列化、反序列化
fastjson 复杂JSON对象序列化、反序列化
FastJson解析实例--对象序列化和反序列化
直接上源码...注释中有详解 package com.company; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.TypeReference; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import
FastJson自定义Date类型反序列化
需求有时候我们需要自定义反序列化,例如从服务器接收的字符串为秒,而fastjson需要的是毫秒。因此需要自定义反序列化。问题提出网上很多资料过于陈旧。
fastjson 序列化反序列化实践整理
只需要这一个就行 &amp;lt;!-- fastjson依赖包 --&amp;gt; &amp;lt;dependency&amp;gt; &amp;lt;groupId&amp;gt;com.alibaba&amp;lt;/groupId&amp;gt; &amp;lt;artifactId&amp;gt;fastjson&amp;lt;/artifactId&amp;gt; &amp;lt;version&amp;gt;${fastjson.version}&amp;lt;/
fastjson反序列化带有get没有set的list字段,没有值
反序列化带有get方法的list字段 但是对于对象中带有get方法的list字段,fastjson的处理: 通过get方法获取list或map,如果是null不会处理。 以下带来。com.alibaba.fastjson.parser.deserializer.FieldDeserializer类 setValue方法片段。 1 2 3 4 5 6 7 8 9 10 11 12 1...
FastJson反序列化对象不一致的解决方法
最近在做对象属性拷贝的工作,原来使用dozerMapper,但是感觉占用内存较高,速度也不快,虽然功能很强大,可以做各种对象的映射。 因此计划使用传说中飞一般的fastJson做序列化和反序列化的方式,进行数据拷贝。 但是遇到了序列化异常的错误: Exception in thread &amp;amp;quot;main&amp;amp;quot; com.alibaba.fastjson.JSONException: syntax error,...
fastjson反序列化ZonedDateTime格式的时间
1. JavaBean       Person person = JSON.parseObject(jsonString, Person.class); 2. List       List listPerson =JSON.parseArray(jsonString, Person.class); 3. List       List listString = J
使用Fastjson序列化与反序列化对象
[java] view plain copy public class JSONobject {          private String obj;       private String color;          public String getObj() { return obj; }       public void setObj(
求问Eclipse下fastjson反序列化
String string = "[ y: 55.11, color : colors[0] , y: 21.63, color: colors[1] , y: 11.94,color: colors[2] , y: 117.15, color: colors[3] ]";rn求问大神,上面这个格式的string要怎么解析出来?rnrn用fastString反序列化一直在这一步报错Group group=JSON.parseObject( string, Group.class );rn(Group是自己定义的JavaBean)rnrn下面是Eclipse具体报的错:[color=#FF0000]exepct '[', but 4[/color]rnrn[img=https://forum.csdn.net/PointForum/ui/scripts/csdn/Plugin/003/onion/3.gif][/img]
Fastjson反序列化泛型类型时候的一个问题
import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; import java.util.ArrayList; import java.util.List; import org.junit.Test; import com.alibaba.fastjso...
动态创建的类反序列化问题(List)
动态生成了一个类。里边包含List属性,T也为动态创建的类,rn过程(生成List过程):rn Type tlist=typeof(List<>).MakeGenericType(tt);//tt为T的类型rn string ss=arrCol[i].ToString();rn CreateProperty(typebuilder, ss, tlist);//生成Listrn生成过程没有错误,但是将xml文件反序列化的过程报错了(There is an error in XML document (0, 0).),声明,文件没错,之前通过此文件用手写的类反序列化过,不知道还需要做什么特殊处理么?
fastjson List转json之后出现反斜杠问题
我请求第三方接口时候,因为List转json之后出现反斜杠,一直报签名失败,一开始并没有注意到是这个反斜杠问题。 是因为还有其他公司也有对接过那个接口,然后把他们请求的报文拿过来对比才发现问题是出在这里。 错误格式 &quot;subOrders&quot;:[{&quot;mid\&quot;:&quot;988460101800201&quot;,&quot;totalAmount\&quot;:&quot;1&quot;}] 正确格式 &quot;subOrders&quot;:[{&quo
List 序列化 反序列化
我有一个list集合,里面放的是Dictionary,现在想把这个集合存放起来,以便将来再次应用,所以就想到了序列化和反序列化,上网查了查,说有解决的办法,本人技术垃圾,按照网上的办法弄了很久也没解决,现在就希望哪位大虾给点可以使用的代码,想知道自己哪里没弄好或者想知道有什么我没听说过的简单方法,谢谢先!!!
使用List反序列化json
我在进行反序列化的时候出错:Cannot deserialize JSON object into type 'System.Collections.Generic.List`1[OpenSinaAPI.Model.comments.bymecomments]'. rnrnrn序列化的时候是正确的,反序列化就错误了。我知道用其它的反序列化也可以,但是我只想用List这种形式来反序列化。rn哪位大侠可以帮忙解决一下。代码如下:rnrn List list = JsonConvert.DeserializeObject>(writejson);//(writejson, typeof(List));rn foreach (bymecomments model in list)rn rn textxml.InnerHtml += model.next_cursor.ToString();rnrn
fastjson反序列化嵌套类为对应实体类 ResultObject的反序列化及泛型优化
  内部类反序列化问题 工程中,常常使用ResultObject类或者Msg类作为通用返回类型 @Data public class Msg { private String type; //data字段,Object类型,通常需要转换为对应实体类 private Object data; } 其中data字段类型为Object类,但是工程中往往需要将其序列化成对...
fastjson深度源码解析- 反序列化(二) - 内部注册反序列化解析
反序列化回调接口实现分析 内部注册的反序列化 fastjson针对常用的类型已经注册了反序列化实现方案,根据源代码注册com.alibaba.fastjson.parser.ParserConfig#initDeserializers可以得到列表: 注册的类型 反序列化实例 是否支持序列化 是否支持反序列化 SimpleDateFormat MiscC...
相关热词 c#检测非法字符 c#双屏截图 c#中怎么关闭线程 c# 显示服务器上的图片 api嵌入窗口 c# c# 控制网页 c# encrypt c#微信网页版登录 c# login 居中 c# 考试软件