GSON的使用

来源:互联网 发布:淘宝品牌库申请入口 编辑:程序博客网 时间:2024/06/05 07:31
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();    }}
阅读全文
'); })();
0 0
原创粉丝点击
热门IT博客
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 迁爱 目录 全文阅读 迁爱我和儿不得不说的 迁爱后续 迁西板栗 迁西在线 迁西县 迁西吧 迁西在哪里 迁西限号 迁西旅游 迁西人事局 迁西旅游景点大全 迁西板栗多少钱一斤 迁西限号查询 迁西县城酒店 迁西比较好的宾馆 迁西二手市场 迁西在线招聘 迁西生活在线 qianxi 印尼迁都 迁都 北京迁都 盘庚迁都 迁都重庆 中国迁都 中国迁都合肥已成定局 中国迁都西安已成定局 中国迁都备选城市 中国会迁都吗 欧陆风云4迁都 传北京迁都因龙气耗尽 迁都武汉已成定局 迂回的意思 迂回 迂回拼音 迂回的拼音 迂回反义词 迂回近义词 迂回读音 迂回的反义词