JSON解析

2021-05-29 14:00

阅读:386

标签:步骤   nta   地址   this   pre   class   tab   新建文件夹   imp   

FastJson

将对象转换为JSON字符串

下载地址:https://github.com/alibaba/fastjson

转换JSON字符串的步骤:
  1. 引入JAR包
  ①IDEA中新建文件夹lib
  ②粘贴fastjson-1.2.70.jar文件
  ③打开File-Project Structure-Libraries,点击+,选择java,选择lib文件夹
  ④打开File-Project Structure-Modules,点击Dependencies,点击+,选择fastjson-1.2.70文件
  2. 在需要转换JSON字符串的位置编写如下代码即可:
String json=JSON.toJSONString(要转换的对象);
注意:对象属性必须使用set/get方法,无论两个类是否在同一个类中
案例:
import com.alibaba.fastjson.JSON;
?
import java.util.List;
?
public class Demo {
  public static void main(String[] args) {
      Person person=new Person("张三",14);
      //1、将person对象转化为json字符串
      String string = JSON.toJSONString(person);
      System.out.println(string);
  }
}
class Person {
  String name;
  int age;
?
  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;
  }
?
  @Override
  public String toString() {
      return "Person{" +
              "name=‘" + name + ‘\‘‘ +
              ", age=" + age +
              ‘}‘;
  }
?
  public Person(String name, int age) {
      this.name = name;
      this.age = age;
  }
}

将JSON字符串转换为对象

1. 引入JAR包
2. 在需要转换Java对象的位置, 编写如下代码:
  类型 对象名=JSON.parseObject(JSON字符串, 类型.class);
  或
  List list=JSON.parseArray(JSON字符串,类型.class);
  注意:Person类和Demo类必须分开写,不能将两个类写入同一个类中
   
  案例:
   
  Demo类代码:
?
      import java.util.List;
?
      public class Demo {
          public static void main(String[] args) {
              //1、将json字符串{"age":14,"name":"张三"}转换为对象
              Person person1 = JSON.parseObject("{\"age\":14,\"name\":\"张三\"}", Person.class);
              System.out.println(person1.getName());
              //2、将字符串转换为集合
              List strings = JSON.parseArray("[\"a\",\"b\",\"c\"]", String.class);
              System.out.println(strings.get(1));
          }
      }
   
  Person类代码:
  package com.unit.test7;
?
      public class Person {
          private String name;
          private int age;
?
          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;
          }
?
          @Override
          public String toString() {
              return "Person{" +
                      "name=‘" + name + ‘\‘‘ +
                      ", age=" + age +
                      ‘}‘;
          }
?
          public Person(String name, int age) {
              this.name = name;
              this.age = age;
          }
      }

OVER

JSON解析

标签:步骤   nta   地址   this   pre   class   tab   新建文件夹   imp   

原文地址:https://www.cnblogs.com/msk123/p/14728051.html

上一篇:程序通信--HTTP

下一篇:phpstorm


评论


亲,登录后才可以留言!