FastJson详解
一、阿里巴巴FastJson是一个Json处理工具包,包括“序列化”和“反序列化”两部分,它具备如下特征: 速度最快,测试表明,fastjson具有极快的性能,超越任其他的Java Json parser。包括自称最快的JackJson; 功能强大,完全支持Java Bean、集合、Map、日期、Enum,支持范型,支持自省;无依赖,能够直接运行在Java SE 5.0以上版本;支持Android;开源 (Apache 2.0) 二、特点
Fastjson是一个Java语言编写的JSON处理器。 1、遵循http://json.org标准,为其官方网站收录的参考实现之一。 2、功能qiang打,支持JDK的各种类型,包括基本的JavaBean、Collection、Map、Date、Enum、泛型。 3、无依赖,不需要例外额外的jar,能够直接跑在JDK上。 4、开源,使用Apache License 2.0协议开源。 三、 使用方法说明
Fastjson API入口类是com.alibaba.fastjson.JSON,常用的序列化操作都可以在JSON类上的静态方法直接完成。
public
public public public public public public public 四、demo 代码: User user = new User(); user.setId(100); user.setName("xxx"); String strJson = JSON.toJSONString(user); System.out.println("######1:"+strJson+":"+JSON.parSEObject(strJson,User.class).getId()); List<User> list = new ArrayList<>(); list.add(user); strJson = JSON.toJSONString(list); System.out.println("######1:"+strJson+":"); user = new User(); user.setId(200); user.setName("yyy"); System.out.println("######2:"+strJson+":"+JSON.parseArray(strJson,User.class).get(1).getName()); Map<Object,Object> map = new HashMap<>(); map.put("userInfos",list); map.put("company","mw"); strJson = JSON.toJSONString(map); System.out.println("######3:"+strJson+":"+JSON.parSEObject(strJson).get("company"));
List<User> users = new ArrayList<User>(); users = JSON.parseArray(JSON.parSEObject(strJson).get("userInfos").toString(),User.class); System.out.println("######4:"+users.size()+":"+users.get(0).getName()); 输出结果:######1:{"id":100,"name":"xxx"}:100 ######1:[{"id":100,"name":"xxx"}]: ######2:[{"id":100,"name":"xxx"},{"id":200,"name":"yyy"}]:yyy ######3:{"company":"mw","userInfos":[{"id":100,"name":"yyy"}]}:mw ######4:2:xxx (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |