package com.example.demo.json;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.serializer.SerializerFeature;
import lombok.var;
import org.junit.Test;
import java.util.ArrayList;
import java.util.List;
public class FastJson01 {
@Test
public void test() {
Student student = new Student(1,"张山","男","我是一个大明星");
System.out.println(JSON.toJSONString(student));
System.out.println(JSON.toJSONString(student,true));
}
@Test
public void test2() {
Student student = new Student(1,"张山","男","我是一个大明星");
System.out.println(JSON.toJSONString(student,SerializerFeature.PrettyFormat));
}
@Test
public void test3() {
Student student = new Student(1,"张山","男","");
String jsonStr = JSON.toJSONString(student,SerializerFeature.PrettyFormat,
SerializerFeature.WriteMapNullValue);
System.out.println(jsonStr);
}
@Test
public void test4() {
Student student = new Student(1,"张山","男","");
String jsonStr = JSON.toJSONString(student,SerializerFeature.PrettyFormat,
SerializerFeature.WriteMapNullValue,
SerializerFeature.WriteNullStringAsEmpty
);
System.out.println(jsonStr);
//TODO json 在转回对象
var stu = JSON.parseObject(jsonStr,Student.class);
System.out.println(stu);//Student(age=1, name=张山, sex=男, desc=)
Integer age = stu.getAge();
System.out.println("age = " + age);
}
@Test
public void test5() {
List<Student> list = new ArrayList<Student>();
Student student = new Student(1,"张山","男","11");
Student student2 = new Student(1,"张山","男","11");
list.add(student);
list.add(student2);
// TODO 集合装json格式的集合
JSONArray jsonStudentList= JSONArray.parseArray(JSON.toJSONString(list));
//System.out.printf("jsonStudentList"+jsonStudentList);
// TODO JSON集合---》对象集合
List<Student> list2 = JSONObject.parseArray(jsonStudentList.toJSONString(), Student.class);
//list2.forEach(System.out::println);
//System.out.printf("list2"+list2.toString());
}
@Test
public void test6() {
//
// String str = "abc";
// List<String> list = JSONObject.parseArray(str, String.class);
//
// System.out.println(list);
}
}
测试类
package com.example.demo.json;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@NoArgsConstructor
@AllArgsConstructor
@Data
public class Student {
private Integer age;
private String name;
private String sex;
private String desc;
//private Data birthday;
}