使用gson进行json转换
Gson 是 Google 提供的用来在 Java 对象和 JSON 数据之间进行映射的 Java 类库。可以将一个 JSON 字符串转成一个 Java 对象,或者反过来。
示例代码如下:
实体定义
package com.wisdombud.gson;
public class SimpleEntity {
private String testInfo;
private Boolean result;
public String getTestInfo() {
return testInfo;
}
public void setTestInfo(String testInfo) {
this.testInfo = testInfo;
}
public Boolean getResult() {
return result;
}
public void setResult(Boolean result) {
this.result = result;
}
}
package com.wisdombud.gson;
import java.util.List;
public class ComplexEntity {
private List<SimpleEntity> list;
private String name;
private int age;
public List<SimpleEntity> getList() {
return list;
}
public void setList(List<SimpleEntity> list) {
this.list = list;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
核心代码
package com.wisdombud.gson;
import java.util.ArrayList;
import java.util.List;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
public class App {
public static void main(String[] args) {
String s = test2Json();
System.out.println(s);
testFromJson();
}
private static String test2Json() {
Gson g = new Gson();
List<ComplexEntity> cList = new ArrayList<ComplexEntity>();
ComplexEntity entity = new ComplexEntity();
cList.add(entity);
entity.setAge(10);
entity.setName("name");
List<SimpleEntity> list = new ArrayList<SimpleEntity>();
entity.setList(list);
SimpleEntity simple = new SimpleEntity();
simple.setResult(true);
simple.setTestInfo("testinfo");
list.add(simple);
String s = g.toJson(cList);
return s;
}
public static void testFromJson() {
String json = test2Json();
Gson g = new Gson();
List<SimpleEntity> list = g.fromJson(json,
new TypeToken<List<SimpleEntity>>() {
}.getType());
System.out.println(list.size());
}
}
使用gson进行json转换的更多相关文章
- [转]Json转换神器之Google Gson的使用
这几天,因为项目的需要,接触了Google的Gson库,发现这个东西很好用,遂记下简单的笔记,供以后参考.至于Gson是干什么的,有什么优点,请各位同学自行百度.话不多说,切入正题: 1. 下载Gso ...
- Json转换利器Gson之实例一-简单对象转化和带泛型的List转化 (转)
Gson 是 Google 提供的用来在 Java 对象和 JSON 数据之间进行映射的 Java 类库.可以将一个 JSON 字符串转成一个 Java 对象,或者反过来. jar和源码下载地址: h ...
- 从零开始学android开发-Json转换利器Gson之实例
Gson 是 Google 提供的用来在 Java 对象和 JSON 数据之间进行映射的 Java 类库.可以将一个 JSON 字符串转成一个 Java 对象,或者反过来. jar和源码下载地址: h ...
- Gson把json串转换成java实体对象
Gson把json串转换成java实体对象的方法如下: 1.首先导入Gson的jar包,网上可以下载. java实体对象如下: public class Model { private double ...
- Gson解析json字符串、json数组转换成对象
实体类: public class Product { private int id; private String name; private String date; public int get ...
- Json转换工具类(基于google的Gson和阿里的fastjson)
在项目之中我们经常会涉及到字符串和各种对象的转换,为此特地整理了一下常用的转换方法 一.基于com.google.code.gson封装的json转换工具类 1. 在pom.xml文件里面引入gson ...
- Gson将字符串转换成JsonObject和JsonArray
以下均利用Gson来处理: 1.将bean转换成Json字符串: public static String beanToJSONString(Object bean) { return new Gso ...
- Google Gson解析Json数据应用实例
转自:http://lixigao449778967.blog.163.com/blog/static/24985164201269105928783/ 1.需要的Jar包 1) Google Gso ...
- json处理三部曲之第三曲:利用Gson处理json
需要导入gson-xxx.jar包 <dependency> <groupId>com.google.code.gson</groupId> <artifac ...
随机推荐
- [HIHO1318]非法二进制(动态规划)
题目链接:http://hihocoder.com/problemset/problem/1318 题意:是个dp题.考虑二进制数为i位的时候,无非有两种情况:新添加的一位为0或者1. 为0的时候,那 ...
- [HDOJ4612]Warm up(双连通分量,缩点,树直径)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4612 所有图论题都要往树上考虑 题意:给一张图,仅允许添加一条边,问能干掉的最多条桥有多少. 必须解决 ...
- AWS Python SDK boto3中的基本概念与使用方法
最近在用boto3编写AWS的lamda函数,学习到了boto3中的一些基本概念与使用方法.在此进行总结. 1. boto3提供了两个级别的接口来访问AWS服务:High Level的Resource ...
- vim常用命令 vim键盘布局
vim键盘布局,vim快捷键 vim常用命令:
- UVa 12716 (GCD == XOR) GCD XOR
题意: 问整数n以内,有多少对整数a.b满足(1≤b≤a)且gcd(a, b) = xor(a, b) 分析: gcd和xor看起来风马牛不相及的运算,居然有一个比较"神奇"的结论 ...
- busybox filesystem ifup
/******************************************************************** * busybox filesystem ifup * 声明 ...
- Java [Leetcode 112]Path Sum
题目描述: Given a binary tree and a sum, determine if the tree has a root-to-leaf path such that adding ...
- 关于web中的自适应布局
一.”自适应网页设计”的概念 2010年,Ethan Marcotte提出了“自适应网页设计”(Responsive Web Design)--这个名词,指可以自动识别屏幕宽度.并做出相应调整的网页设 ...
- POJ 2362 Square
题意:给n个木棍,问能不能正好拼成一个正方形. 解法:POJ1011的简单版……不需要太多剪枝……随便剪一剪就好了……但是各种写屎来着QAQ 代码: #include<stdio.h> # ...
- NumberSeekBar 可任意拖动和自动
package com.example.numberseekbar; import android.content.Context; import android.content.res.Resour ...