处理json 几种方式总结

在工作中很多时候我们都会在java中处理json,一般会用到的几类:json_lib,Google的Gson,阿里的FastJson以及开源的Jackson。这里我简单总结下其中三种(Gson,FastJson,Jackson)的用法,json_lib一般不会用,依赖的包太多而且转换复杂的bean时有缺陷。

简单介绍

Jackson:

依赖的jar包少,简单易用效率比较高。

Jackson对于复杂类型的json转换bean会出现问题,一些集合Map,List的转换会出现问题。
Jackson对于复杂类型的bean转换Json,转换的json格式不是标准的Json格式。

Gson:

功能上无可挑剔,速度稍微逊色于阿里的FastJson

FastJson:

Fastjson是由Java语言编写的高性能JSON处理器,由阿里开发。
无依赖,不需要例外额外的jar,能够直接跑在JDK上。
FastJson在复杂类型的Bean转换Json上会出现一些问题,可能会出现引用的类型,导致Json转换出错,需要制定引用。
FastJson采用独创的算法,将parse的速度提升到极致,超过所有json库。

Jackson使用:

部分注解使用:

Gson基本使用:

Fastjson基本使用:

总结:一般开发不要求性能的话:使用Gson确保数据转换的正确性

如果要求性能的话:可以用Gson把bean转json(数据准确性),再用fasejson  把json转bean 

猜你喜欢

转载自blog.csdn.net/XiaoLongFight/article/details/88797461