zoukankan      html  css  js  c++  java
  • JavaWeb 之 JSON解析与转换

    一、使用 Gson 解析

       GSON 是 Google提供的用来在 Java 对象和 JSON 数据之间进行映射的 Java 类库,可以快速的将一个 Json 字符转成一个 Java 对象,或者将一个 Java 对象转化为 Json 字符串。

        gson 在 github 上开源地址:https://github.com/google/gson

       二进制开发包下载:gson 二进制开发包下载地址:https://search.maven.org/artifact/com.google.code.gson/gson/2.8.5/jar

      1、导入 gson 依赖

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

      2、JavaBean 与 json 的互转

     1     @Test
     2     public void test1() {
     3         Person person = new Person(1, "蔡晓磊");
     4         // 创建 Gson 对象实例
     5         Gson gson = new Gson();
     6 
     7         // toJson 方法可以把 java 对象转换成为 json 字符串
     8         String personStr = gson.toJson(person);
     9         System.out.println("personStr = " + personStr);
    10 
    11         // fromJson 把 json 字符串转换回 Java 对象
    12         // 第一个参数是 json 字符串
    13         // 第二个参数是转换回去的 Java 对象类型
    14         Person personJson = gson.fromJson(personStr, Person.class);
    15         System.out.println("personJson = " + personJson);
    16     }

      3、List 和 json 的互转

     1     @Test
     2     public void test2() {
     3 
     4         List<Person> personList = new ArrayList<>();
     5 
     6         personList.add(new Person(1, "张三"));
     7         personList.add(new Person(2, "李四"));
     8 
     9         // 创建 Gson 对象实例
    10         Gson gson = new Gson();
    11 
    12         // toJson  把 List 转换为 json 字符串
    13         String personStr = gson.toJson(personList);
    14         System.out.println("personStr = " + personStr);
    15 
    16         //List<Person> jsonList = gson.fromJson(personStr, new PersonListType().getType());
    17         List<Person> jsonList = gson.fromJson(personStr, new TypeToken<List<Person>>(){}.getType());
    18         System.out.println(jsonList);
    19         System.out.println(jsonList.get(0));
    20     }

      4、map 和 json的互转

     1     @Test
     2     public void test3() {
     3 
     4         Map<Integer, Person> map = new HashMap<>();
     5 
     6         map.put(1, new Person(1, "张三"));
     7         map.put(2, new Person(2, "李四"));
     8 
     9         // 创建 Gson 对象实例
    10         Gson gson = new Gson();
    11 
    12         // toJson   把 map 集合转换成为 json 字符串
    13         String personStr = gson.toJson(map);
    14         System.out.println("personStr = " + personStr);
    15 
    16         //HashMap<Integer, Person> personMap = gson.fromJson(personStr, new PersonMapType().getType());
    17         HashMap<Integer, Person> personMap = gson.fromJson(personStr, new TypeToken<Map<Integer, Person>>(){}.getType());
    18         System.out.println(personMap);
    19         System.out.println(personMap.get(1));
    20     }

    二、使用 Jackson 解析

      1、

      2、

      3、

      4、

      5、

    三、

  • 相关阅读:
    IIS 404.17 错误解决方案
    复制文件夹
    Sliverlight Slide 的左右滑动
    Web前端学习第三天——————HTML篇.013图片格式
    Web前端学习第三天——————HTML篇.010布局与选择器
    Web前端学习第二天——————HTML篇.009css
    Web前端学习第一天—————HTML篇.004个人简历制作
    Web前端学习第二天——————HTML篇.008表单
    Web前端学习第一天——————HTML篇.004百度云盘目录
    Web前端学习第三天——————HTML篇.011选择器权重
  • 原文地址:https://www.cnblogs.com/niujifei/p/15151974.html
Copyright © 2011-2022 走看看