JSON学习

JSON是一种与开发语言无关的、轻量级的数据格式。全称JavaScript Object Notation。

优点:易于人的阅读编写,易于程序解析与生产

json样例:

{
    "name":"sdx",
    "sex":"male",
    "age":22,
    "where":{
        "country":"China",
        "city":"penglai"
    }
}

  数据结构:Object,Array

  基本类型:String,number,true,false,null

数据结构-Object

使用{}包含的键值对结构,key必须是String类型,value可以是任意的基本类型或数据结构

数据结构-Array

使用 [ ] 来起始,并用逗号隔开元素。

使用GSON转换

在pom.xml中插入以下依赖:

        <dependency>
            <groupId>com.google.code.gson</groupId>
            <artifactId>gson</artifactId>
            <version>2.8.5</version>
        </dependency>

  将list转换成json格式:

Gson gson = new Gson();  
List<Person> persons = new ArrayList<Person>();  
for (int i = 0; i < 10; i++) {  
     Person p = new Person();  
     p.setName("name" + i);  
     p.setAge(i * 5);  
     persons.add(p);  
}  
String str = gson.toJson(persons);

  将json转换成单一实体类:

Person person = gson.fromJson(str, Person.class); 

  将json转换成列表类型:

List<Person> ps = gson.fromJson(str, new TypeToken<List<Person>>(){}.getType());  
for(int i = 0; i < ps.size() ; i++)  
{  
     Person p = ps.get(i);  
     System.out.println(p.toString());  
}

  上面的代码使用了TypeToken,它是gson提供的数据类型转换器,可以支持各种数据集合类型转换。

原文地址:https://www.cnblogs.com/nirvanaInSilence/p/12782389.html