fastjson 之常见的数据类型与json的相互转换

public class FastJsonTest1
{  

    /**
     * 数组转json格式字符串
     */
    public void array2Json(){
        String[] arr = {"bill","green","maks","jim"};
        String jsonText = JSON.toJSONString(arr, true);
        System.out.println("array2Json()方法:jsonText=="+jsonText);
        // 输出结果:jsonText==["bill","green","maks","jim"]
    }  

    /**
     * json格式字符串转数组
     */
    public void json2Array(){
        String jsonText = "[\"bill\",\"green\",\"maks\",\"jim\"]";
        JSONArray jsonArr = JSON.parseArray(jsonText);
        System.out.println("json2Array()方法:jsonArr=="+jsonArr);
        // 输出结果:jsonArr==["bill","green","maks","jim"]
    }  

    /**
     * 数组转json格式字符串
     */
    public void array2Json2(){
        User user1 = new User("P001","TOM",16);
        User user2 = new User("P002","JACKSON",21);
        User user3 = new User("P003","MARTIN",20);
        User[] userArr = {user1,user2,user3};
        String jsonText = JSON.toJSONString(userArr, true);
        System.out.println("array2Json2()方法:jsonText=="+jsonText);
        //输出结果:jsonText==[{"age":16,"id":"P001","name":"TOM"},{"age":21,"id":"P002","name":"JACKSON"},{"age":20,"id":"P003","name":"MARTIN"}]
    }  

    /**
     * json格式字符串转数组
     */
    public void json2Array2(){
        String jsonText = "[{\"age\":16,\"id\":\"P001\",\"name\":\"TOM\"},{\"age\":21,\"id\":\"P002\",\"name\":\"JACKSON\"},{\"age\":20,\"id\":\"P003\",\"name\":\"MARTIN\"}]";
        JSONArray jsonArr = JSON.parseArray(jsonText);
        System.out.println("json2Array2()方法:jsonArr=="+jsonArr);
        // 输出结果:jsonArr==[{"age":16,"id":"P001","name":"TOM"},{"age":21,"id":"P002","name":"JACKSON"},{"age":20,"id":"P003","name":"MARTIN"}]
    }  

    /**
     * list集合转json格式字符串
     */
    public void list2Json(){
        List list = new ArrayList();
        User user1 = new User("L001","TOM",16);
        list.add(user1);
        User user2 = new User("L002","JACKSON",21);
        list.add(user2);
        User user3 = new User("L003","MARTIN",20);
        list.add(user3);
        String jsonText = JSON.toJSONString(list, true);
        System.out.println("list2Json()方法:jsonText=="+jsonText);
        //输出结果:jsonText==[{"age":16,"id":"L001","name":"TOM"},{"age":21,"id":"L002","name":"JACKSON"},{"age":20,"id":"L003","name":"MARTIN"}]
    }  

    /**
     * list集合转json格式字符串
     */
    public void list2Json2(){
        List list = new ArrayList();
        Address address1 = new Address("广东省","深圳市","科苑南路","580053");
        User user1 = new User("L001","TOM",16,address1);
        list.add(user1);
        Address address2 = new Address("江西省","南昌市","阳明路","330004");
        User user2 = new User("L002","JACKSON",21,address2);
        list.add(user2);
        Address address3 = new Address("陕西省","西安市","长安南路","710114");
        User user3 = new User("L003","MARTIN",20,address3);
        list.add(user3);
        String jsonText = JSON.toJSONString(list, true);
        System.out.println("list2Json2()方法:jsonText=="+jsonText);
        //输出结果:jsonText==[{"address":{"city":"深圳市","post":"580053","province":"广东省","street":"科苑南路"},"age":16,"id":"L001","name":"TOM"},{"address":{"city":"南昌市","post":"330004","province":"江西省","street":"阳明路"},"age":21,"id":"L002","name":"JACKSON"},{"address":{"city":"西安市","post":"710114","province":"陕西省","street":"长安南路"},"age":20,"id":"L003","name":"MARTIN"}]
    }  

    /**
     * map转json格式字符串
     */
    public void map2Json(){
        Map map = new HashMap();
        Address address1 = new Address("广东省","深圳市","科苑南路","580053");
        map.put("address1", address1);
        Address address2 = new Address("江西省","南昌市","阳明路","330004");
        map.put("address2", address2);
        Address address3 = new Address("陕西省","西安市","长安南路","710114");
        map.put("address3", address3);
        String jsonText = JSON.toJSONString(map, true);
        System.out.println("map2Json()方法:jsonText=="+jsonText);
        //输出结果:jsonText=={"address1":{"city":"深圳市","post":"580053","province":"广东省","street":"科苑南路"},"address2":{"city":"南昌市","post":"330004","province":"江西省","street":"阳明路"},"address3":{"city":"西安市","post":"710114","province":"陕西省","street":"长安南路"}}
    }  

}  
时间: 2024-08-01 17:32:22

fastjson 之常见的数据类型与json的相互转换的相关文章

数组和json的相互转换

json_encode() <?php /*****一维数组*********/ //有键 $arr = array( 'a'=>1, 'b'=>2, 'c'=>3, ); $json = json_encode($arr); echo($json); //{"a":1,"b":2,"c":3} //无键 $arr = array(1,2,3); $json = json_encode($arr); echo($json)

MySQL常见的数据类型

不多说,直接上干货! MySQL常见的数据类型 一.数据类型是什么? 数据类型是指列.存储过程参数.表达式和局部变量的数据特征,它决定了数据的存储格式,代表了不同的信息类型. 有一些数据是要存储为数字的,数字当中有些是要存储为整数.小数.日期型等... 二.MYSQL常见数据类型 MySQL支持多种类型,大致可以分为四类:数值型.浮点型.日期/时间和字符串(字符)类型. 1.数值类型 MySQL支持所有标准SQL数值数据类型. 这些数值类型包括严格数值数据类型(INTEGER.SMALLINT.

js中常见的数据类型

js中常见的数据类型分为两种:基本数据类型.复杂数据类型. 基本数据类型把数据名和值直接存储在栈中. 复杂数据类型在栈中存储数据名和一个堆的地址,在堆中存储属性及值.访问时先从栈获取地址, 再到堆中拿出相应的值 总结:基本数据类型复制的是值,复杂数据类型复制的是引用地址. 为什么划分数据类型? 计算机为了更方便的对内存进行管理,对不同的数据,做了类型上的划分. 如何查看一个变量的数据类型? 使用typeof命名 例如: var x = 5; var res typeof x; 变量的数据类型有

List与Json的相互转换

List 与 Json 的相互转换,需要使用到6个jar包,如果不引用这些jar包,需要写的代码量比较多,这里暂时记录的是使用jar包来进行转换的情况. 下面图片是测试demo的结构,仅供参考,需要注意jar包的版本问题. 其中 Test.java 中的代码如下: package com.listandjson; import java.util.ArrayList; import java.util.List; import net.sf.json.JSONArray; public clas

ServiceStack DateTime数据类型转Json出现的困扰

原文:ServiceStack DateTime数据类型转Json出现的困扰 执行dotnet-new selfhost sstest 创建项目,然后打开解决方案 修改ssTest.ServiceModel中的Hello.cs,在HellopResponse中添加时间属性,然后修改MyServices中的代码 运行程序,打开Postman查看返回结果 可以看到Json中date属性返回的是  "date": "/Date(1555810731732+0800)/",

Java中xml与json的相互转换

/*xom-1.1.jar json 与 xml的相互转换*/  /**      * JSON(数组)字符串转换成XML字符串      * (必须引入 xom-1.1.jar)      * @param jsonString      * @return      */     public static String json2xml(String jsonString) {         XMLSerializer xmlSerializer = new XMLSerializer(

Asp.Net WebAPI配置接口返回数据类型为Json格式

一.默认情况下WebApi 对于没有指定请求数据类型类型的请求,返回数据类型为Xml格式 例如:从浏览器直接输入地址,或者默认的XMLRequest,或者AngularJs的get请求等. 对于有循环引用的也会抛出异常""ObjectContent`1"类型未能序列化内容类型"application/xml; charset=utf-8"的响应正文." 二.设置返回格式为Json数据 1.修改配置,这对所有的接口都生效 找到Global.asax

Python中常见的数据类型总结

Python提供多种数据类型来存放数据项集合,主要包括序列(列表list和元组tuple),映射(如字典dict),集合(set),下面对这几种一一介绍: 一 序列 1.列表list 列表是一种有序的集合,相对于元组和字符串的不同是它其中的元素可变,可以随时添加和删除其中的元素. (1) 创建list 在命令行中测试,如下: >>> L1 = [1,2,3] >>> L1 [1, 2, 3] >>> L2 = ['abc'] >>>

《代码大全》阅读笔记-13-不常见的数据类型

只有万不得已时才使用全局数据 !!!就近原则!!!注释紧随代码,变量紧随使用它们的地方 --Tacey 访问器子程序的优势 你获得了对数据的集中控制 你可以确保对变量的所有引用都得到了保护 自动获取信息隐藏的普遍益处 访问器子程序可以很容易转变为抽象数据类型 如何使用访问器子程序: 要求所有的代码通过访问器子程序来存储数据:比如,所有全局以g_开头,除了访问器,其他代码都不得访问 不要把所有的全局数据都扔在一处:尽量把全局数据和访问器子程序打包到适合的类里面 用锁定来控制对全局变量的访问:锁定要