前言
对于前后端分离的开发方式,JSon和对象的转换是很常见的
fastjson
fastjson 是一个性能很好的Java语言实现的JSON解析器和生成器,来自阿里巴巴的工程师开发。其主要特点是:
-
快速:fastjson采用独创的算法,将parse的速度提升到极致,超过所有基于Java的json库,包括曾经号称最快的jackson。
-
强大:Fastjson完全支持https://json.org的标准(也是Google官方网站收录的参考实现之一),支持各种JDK类型,包括基本类型、JavaBean、Collection、Map、Enum、泛型等。
-
零依赖:没有依赖其它任何类库除了JDK,能够直接运行在Java SE 5.0以上版本,支持Android;开源 (Apache 2.0)。
-
JSON.parseObject(String str, Class c)
将JSon格式的字符串转换成对象。在JSON.parseObject 的时候,会去填充名称相同的属性。对于Json字符串中没有,而model类有的属性,会为null;对于model类没有,而Json字符串有的属性,不做任何处理。 -
JSON.toJSONString(Object obj)则是将对象转化为Json格式字符串
-
JSON.parseObject(String str)与JSONObject.parseObject(String str)的区别
根据源码显示:JSON是一个抽象类,JSON中有一个静态方法parseObject(String str),将str解析为一个JSONObject对象并返回,JSONObject是一个继承自JSON的类,当调用JSONObject.parseObject(String str)时,会直接调用父类的parseObject(String str)。所以两者没什么区别,一个是用父类去调用父类自己的静态的parseObject(String str),一个是用子类去调用父类的静态parseObject(String str),两者调的是同一个方法。
网友评论