Home  >  Article  >  Java  >  Introduction to commonly used scenarios of FastJson (code)

Introduction to commonly used scenarios of FastJson (code)

不言
不言forward
2019-02-21 15:26:362030browse

This article brings you an introduction (code) to commonly used scenarios in FastJson. It has certain reference value. Friends in need can refer to it. I hope it will be helpful to you.

JavaBean

package com.daily.json;

import com.alibaba.fastjson.annotation.JSONField;

import java.util.Date;

public class Student {

    @JSONField(name = "NAME", ordinal = 3)
    private String name;
    @JSONField(ordinal = 2)
    private int age;
    @JSONField(format = "yyyy-MM-dd HH:mm:ss", ordinal = 1)
    private Date birthDay;
    @JSONField(serialize = false)
    private String addr;

    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;
    }

    public Date getBirthDay() {
        return birthDay;
    }

    public void setBirthDay(Date birthDay) {
        this.birthDay = birthDay;
    }

    public String getAddr() {
        return addr;
    }

    public void setAddr(String addr) {
        this.addr = addr;
    }
}

Test Class

package com.daily.json;

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.TypeReference;
import com.alibaba.fastjson.serializer.PropertyFilter;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class TestFastJson {

    private static Student student;
    private static List<Student> studentList;
    static {
        student = new Student();
        student.setName("张三");
        student.setAge(18);
        student.setBirthDay(new Date());
        student.setAddr("湖南");

        studentList = new ArrayList<>();
        studentList.add(student);
        studentList.add(student);
    }

    private static PropertyFilter propertyFilter = (object, name, value) -> {
        if (name.equals("age") && value.equals(18)) {
                return false;
        }
        return true;
    };

    public static void main(String[] args) {
        String studentStr = JSON.toJSONString(student);
        //转对象
        Student student1 = JSON.parseObject(studentStr, Student.class);
        Student student2 = JSON.parseObject(studentStr, new TypeReference<Student>() {});
        //转集合
        String studentListStr = JSON.toJSONString(studentList);
        List<Student> students = JSON.parseArray(studentListStr, Student.class);
        List<Student> students2 = JSON.parseObject(studentListStr, new TypeReference<List<Student>>() {
        });
        //过滤字段,默认过滤null
        String student3 = JSON.toJSONString(student, propertyFilter);
        System.out.println(student3);
    }
}

The above is the detailed content of Introduction to commonly used scenarios of FastJson (code). For more information, please follow other related articles on the PHP Chinese website!

Statement:
This article is reproduced at:segmentfault.com. If there is any infringement, please contact admin@php.cn delete