Gson操作json

github:https://github.com/google/gson

API:http://google.github.io/gson/apidocs/

示例对象

 1 package present;
 2
 3 public class School {
 4     private int id;
 5
 6     public int getId() {
 7         return id;
 8     }
 9
10     private Address address;
11
12     public Address getAddress() {
13         return address;
14     }
15
16     public void setAddress(Address address) {
17         this.address = address;
18     }
19
20     private Student[] students;
21
22     public Student[] getStudents() {
23         return students;
24     }
25
26     public void setStudents(Student[] students) {
27         this.students = students;
28     }
29
30     public School(int id) {
31         this.id = id;
32     }
33
34 }

 1 package present;
 2
 3 public class Student {
 4     private String name;
 5     private int age;
 6
 7     public String getName() {
 8         return name;
 9     }
10     public void setName(String name) {
11         this.name=name;
12     }
13
14     public int getAge() {
15         return this.age;
16     }
17
18     public void setAge(int age) {
19          this.age=age;
20     }
21 }

 1 package present;
 2
 3 public class Address {
 4     private String number;
 5
 6     private String street;
 7
 8     public String getStreet() {
 9         return street;
10     }
11
12     public void setStreet(String street) {
13         this.street = street;
14     }
15
16     public String getNumber() {
17         return number;
18     }
19
20     public void setNumber(String number) {
21         this.number = number;
22     }
23
24 }

 1         School school = new School(10001);
 2         Address address = new Address();
 3         address.setNumber("8000");
 4         address.setStreet("山大路解放街");
 5         school.setAddress(address);
 6         Student[] students = new Student[3];
 7         for (int i = 0; i < students.length; i++) {
 8             Student student = new Student();
 9             student.setAge(i + 10);
10             student.setName("学生" + i);
11             students[i] = student;
12         }
13         school.setStudents(students);

对象转json串

        Gson gson = new Gson();
        String json = gson.toJson(school);
        System.out.println(json);

json串转对象

 School result = gson.fromJson(json, School.class);

时间: 2024-10-13 16:27:28

Gson操作json的相关文章

Java操作JSON数据(2)--Gson操作JSON数据

Gson是Google公司发布的一个开发源码的Java库,可用于将Java对象转换为JSON字符串,也可用于将JSON字符串转换为对应的Java对象.本介绍下Gson的基本使用方法,包括序列化和反序列化:文中所使用到的软件版本:Java 1.8.0_191.Gson 2.8.6. 1.引入依赖 <dependency> <groupId>com.google.code.gson</groupId> <artifactId>gson</artifactI

Android中使用Gson解析JSON数据的两种方法

Json是一种类似于XML的通用数据交换格式,具有比XML更高的传输效率;本文将介绍两种方法解析JSON数据,需要的朋友可以参考下 Json是一种类似于XML的通用数据交换格式,具有比XML更高的传输效率. 从结构上看,所有的数据(data)最终都可以分解成三种类型: 第一种类型是标量(scalar),也就是一个单独的字符串(string)或数字(numbers),比如"北京"这个单独的词. 第二种类型是序列(sequence),也就是若干个相关的数据按照一定顺序并列在一起,又叫做数组

我的Android进阶之旅------&gt;解决Jackson、Gson解析Json数据时,Json数据中的Key为Java关键字时解析为null的问题

1.问题描述 首先,需要解析的Json数据类似于下面的格式: { ret: 0, msg: "normal return.", news: [ { id: "NEW2016062800875700", from: "腾讯新闻客户端", qqnews_download_url: "http://inews.qq.com/m?refer=openapi_for_xiaotiancai", articletype: "1&

Retrofit + GSON处理JSON模板

动机 首先封装了Retrofit的一些操作,也就是回调的时候不必去为每个javabean的每个操作去写一个Callback,所有的bean公用一个Callback. 使用了MVP的设计思想,加上公用的Callback,使得每个bean的Presenter层只需要极少的方法,就可以实现原来的功能. 然后封装GSON,定义了公用的Holder容器,存储从服务器直接返回的JSON数据,然后分发给每个bean类. 当然上面所有的前提都是一个:服务器返回的JSON数据是按照一定的格式的. API返回的数据

android_使用Gson解析json数据

Json是一种类似于XML的通用数据交换格式,具有比XML更高的传输效率. 从结构上看,所有的数据(data)最终都可以分解成三种类型: 第一种类型是标量(scalar),也就是一个单独的字符串(string)或数字(numbers),比如"北京"这个单独的词. 第二种类型是序列(sequence),也就是若干个相关的数据按照一定顺序并列在一起,又叫做数组(array)或列表(List),比如"北京,上海". 第三种类型是映射(mapping),也就是一个名/值对(

让C#可以像Javascript一样操作Json

Json的简介 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.它基于ECMAScript的一个子集. JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C.C++.C#.Java.JavaScript.Perl.Python等).这些特性使JSON成为理想的数据交换语言. 易于人阅读和编写,同时也易于机器解析和生成(一般用于提升网络传输速率). 来自百度百科的介绍 Json的优点 数据格式比较简单,易于读写,格式都是压缩

android之GSON解析JSON

Gson 是 Google 提供的用来在 Java 对象和 JSON 数据之间进行映射的 Java 类库. 比如: <pre name="code" class="java">public class Order { public String id; public String OrderName; @Override public String toString() { return "id:"+id+",OrderNa

C#中用JavaScriptSerializer和Json.Net操作json格式的文件

1.json文件 2.写出对应的类 1 //折扣 2 public class Discount 3 { 4 public string Qty { get; set; } 5 public string percentage { get; set; } 6 } 7 //产品信息 8 public class ProductInfo 9 { 10 public string packing { get; set; } 11 public string Qty { get; set; } 12 p

JS操作JSON总结

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,是理想的数据交换格式.同时,JSON是 JavaScript 原生格式,这意味着在 JavaScript 中处理 JSON数据不需要任何特殊的 API 或工具包.本文主要是对JS操作JSON的方法做下总结. 在JSON中,有两种结构:对象和数组. 1. 一个对象以“{”(左括号)开始,“}”(右括号)结束.每个“名称”后跟一个“:”(冒号):“‘名称/值’ 对”之间使用“,