GSON的使用
Posted 爸爸去哪了2之熊猫三胞胎
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了GSON的使用相关的知识,希望对你有一定的参考价值。
import java.util.List;
import org.junit.Test;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.google.gson.reflect.TypeToken;
/**
* @ClassName: GsonTest
* @Description: 主要使用Gson来进行对数据的处理
* @author fangzewen
* @date Dec 23, 2017 3:09:31 PM
*
*/
public class GsonTest
/**
* Gson提供了fromJson() 和toJson() 两个直接用于解析和生成的方法,
* 前者实现反序列化,后者实现了序列化。同时每个方法都提供了重载方法,
* 我常用的总共有5个。
* @Title: A
* @Description: 基本数据类型的解析
* @param 设定文件
* @return void 返回类型
* @throws
*/
@Test
public void A()
Gson gson=new Gson();
int i=gson.fromJson("100", int.class);
System.out.println(i);
double d=gson.fromJson("99.99", double.class);
System.out.println(d);
boolean b=gson.fromJson("true", boolean.class);
System.out.println(b);
String s=gson.fromJson("lalala", String.class);
System.out.println(s);
String jsonNumber=gson.toJson(100);
System.out.println(jsonNumber);
String jsonBoolean=gson.toJson(false);
System.out.println(jsonBoolean);
String jsonString=gson.toJson("StringAdd");
System.out.println(jsonString);
String jsonDoolean=gson.toJson(33.23);
System.out.println(jsonDoolean);
String jsonUserString = "\\"name\\":\\"怪盗kidou\\",\\"age\\":24,\\"email_address\\":\\"gson@163.com\\"";
User user = gson.fromJson(jsonUserString, User.class);
System.out.println(user.getEmailAddress());
User user1 =new User("name",24,"name@163.com");
String jsonObject=gson.toJson(user1);
System.out.println(jsonObject);
/**
* @Title: B
* @Description: Gson中使用泛型
* @param 设定文件
* @return void 返回类型
* @throws 饱醉豚哥哥
*/
@Test
public void B()
Gson gson =new Gson();
String jsonArray= "[\\"android\\",\\"Java\\",\\"php\\"]";
String[] strings=gson.fromJson(jsonArray, String[].class);
List<String> stringList = gson.fromJson(jsonArray, new TypeToken<List<String>>() .getType());
@Test
public void C()
Gson gson = new Gson();
User user = new User("kidou",24,"ikidou@163.com");
System.out.println(gson.toJson(user)); // 写到控制台
/**
* @Title: D
* @Description: 使用GsonBuilder导出null值、格式化输出、日期时间
* @param 设定文件
* @return void 返回类型
* @throws
*/
@Test
public void D()
Gson gson =new GsonBuilder().serializeNulls().create();
User user = new User("kidou",24);
System.out.println(gson.toJson(user));
Gson gson1=new GsonBuilder()
.serializeNulls()
.setDateFormat("yyyy-MM-dd")
.disableInnerClassSerialization()
.generateNonExecutableJson()
.disablehtmlEscaping()
.setPrettyPrinting()
.create();
以上是关于GSON的使用的主要内容,如果未能解决你的问题,请参考以下文章