我用过的有jackson,谷歌的gson,阿里的fastjson
fastjson在遍历JSONObject的时候顺序不是有序的,想要有序还得改源码,比较麻烦,序列化对象时属性的顺序也不能保证,是我放弃使用的主要原因
gson是用起来是最痛快的,一句话就能解决
String string = new Gson().toJson(user);
User user = new Gson().fromeJson(string, User.class);
特点是不报错,如果输入的json字符串和Java Bean的属性对应不上,相应属性会为null或默认值
这是优点还是缺点就见仁见智了,至少我在转换一些不太规则的API返回值时还是挺方便的。
alibaba(阿里巴巴)的fastjson基本可以说是最好用的。以下为pom依赖
阿里巴巴有个第三方的包,google也有第三方包,google的好用一点。反正我在androidstudio用阿里巴巴的失败,换了google的成就OK了,当时还找错找了很久