fastjson默认是无序的

Posted by wotrd on 07-08,2019

fastjson默认是无序的

不知道大家注意到没有,fastjson默认是无序的。我是在做参数加密的时候发现的。 JSONObject object = new JSONObject(); 然后, put,put,put。 最后得到的结果和put的顺序不一致。
查看fastjson的源码:
w_b_1

w_b_2

w_b_3 可以看到构造函数根据ordered参数判断使用LinkedHashMap(有序)还是HashMap(无序)的。默认是无序的 因此,如果我们需要json是有序的话,我们可以在构造函数中传入ordered参数(true)实现。

未完待续,有问题请留言!