官方JSON配合FastJSON一塊兒運用的幾種解析狀況

java
生成字符串請看官方JSON生成篇
一種:
import com.ObjectToJson.ShengChengJsonUtils;
import com.alibaba.fastjson.JSON;
import com.domain.Student03;
//阿里巴巴淘寶的JSON解析,要導入fastjson包
public class FastJson_1 {
 public static void main(String[] args) {
 // 第1:{"id":11,"age":22,"name":"張三"}
 //注意用阿里巴巴的json實體類(Student03)要有空的構造方法
 String json=ShengChengJsonUtils.createJSON_01();
 System.out.println(json);
 //直接將類的字節碼文件給fastjson直接進行解析
 Student03 stu=JSON.parseObject(json, Student03.class);
 System.out.println(stu);
 }
}
二種:
import org.json.JSONException;
import org.json.JSONObject;
import com.ObjectToJson.ShengChengJsonUtils;
import com.alibaba.fastjson.JSON;
import com.domain.Student03;
//官方的json與阿里巴巴fastjson一塊兒結合使用。
//解析集合
public class FastJson_2 {
 public static void main(String[] args) throws JSONException {
 // 第2種:{"student":{"id":11,"age":20,"name":"張三"}}
 //注意用阿里巴巴的json實體類(Student03)要有空的構造方法
 String json=ShengChengJsonUtils.createJSON_02();
 System.out.println(json);
 JSONObject obj=new JSONObject(json);
 Student03 stu=JSON.parseObject(obj.getString("student"), Student03.class);
 System.out.println(stu);
 }
}
三種:
import org.json.JSONException;
import org.json.JSONObject;
import com.ObjectToJson.ShengChengJsonUtils;
import com.alibaba.fastjson.JSON;
import com.domain.MyClass;
import com.domain.Student;
public class FastJson_3 {
 public static void main(String[] args) throws JSONException {
 // 第3種:{"student":{"id":11,"age":23,"name":"張三"},"class_name":"and1510"}
 String json=ShengChengJsonUtils.createJSON_03();
 System.out.println(json);
 JSONObject obj=new JSONObject(json);
 MyClass myClass=new MyClass();
 myClass.setClass_name(obj.getString("class_name"));
 Student stu=JSON.parseObject(obj.getString("student"), Student.class);
 myClass.setStudent(stu);
 System.out.println(myClass);
 }
}
四種:
package com.fastJson;
import java.util.List;
import com.ObjectToJson.ShengChengJsonUtils;
import com.alibaba.fastjson.JSON;
import com.domain.Student03;
public class FastJson_5 {
 public static void main(String[] args) {
 /**
  * [{"id":11,"age":23,"name":"張三"},{"id":12,"age":22,"name"
  * :"張三"}]
  */
 String json=ShengChengJsonUtils.createJSON_05();
 System.out.println(json);
 List<Student03>list=JSON.parseArray(json, Student03.class);
 for(Student03 s:list){
 System.out.println(s);
 }
 }
}
實體類:
public class Student03 {
 public int id;
 public String name;
 public int age;
 
 
 
 public Student03(int id, String name, int age) {
 super();
 this.id = id;
 this.name = name;
 this.age = age;
 }
 @Override
 public String toString() {
 return "Student [id=" + id + ", name=" + name + ", age=" + age + "]";
 }
 public Student03() {
 super();
 }
 
}
第二個實體類:
package com.domain;
public class MyClass {
 private String class_name;
 private Student student;
 @Override
 public String toString() {
 return "MyClass [class_name=" + class_name + ", student=" + student
 + "]";
 }
 public String getClass_name() {
 return class_name;
 }
 public void setClass_name(String class_name) {
 this.class_name = class_name;
 }
 public Student getStudent() {
 return student;
 }
 public void setStudent(Student student) {
 this.student = student;
 }
 public MyClass(String class_name, Student student) {
 super();
 this.class_name = class_name;
 this.student = student;
 }
 public MyClass() {
 super();
 }
}
相關文章
相關標籤/搜索