加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

fastjson 简单使用

发布时间:2020-12-16 18:42:47 所属栏目:百科 来源:网络整理
导读:利用fastjson 可以将对象转换为 json String,并可以将 json String 转为相应的对象 package com.jason.test;import com.alibaba.fastjson.JSON;import com.alibaba.fastjson.serializer.SerializerFeature;import java.util.ArrayList; public class FastJs

利用fastjson 可以将对象转换为 json String,并可以将 json String 转为相应的对象

package com.jason.test;

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.serializer.SerializerFeature;

import java.util.ArrayList;

public class FastJsonTest {
    public static void main(String[] args) {
        User user = new User("jason","123456");
        String json = JSON.toJSONString(user,SerializerFeature.WriteNullListAsEmpty);
        //String json = JSON.toJSONString(user);
        System.out.println(json); //{"name":"jason","passwd":"123456"}

        User user2 = new User("dong","123456");
        ArrayList<User> list = new ArrayList<>(2);
        list.add(user);
        list.add(user2);
        String listJson = JSON.toJSONString(list);
        System.out.println(listJson);//[{"name":"jason","passwd":"123456"},{"name":"dong","passwd":"123456"}]

        UserFoo uf = JSON.parSEObject(json,UserFoo.class);
        System.out.println(uf);//UserFoo{name=‘jason‘,passwd=‘123456‘}
    }
}


class User {
    private String name;
    private String passwd;

    public User(String name,String passwd) {
        this.name = name;
        this.passwd = passwd;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getPasswd() {
        return passwd;
    }

    public void setPasswd(String passwd) {
        this.passwd = passwd;
    }

}

class UserFoo {
    private String name;
    private String passwd;

    public UserFoo() {
    }

    public UserFoo(String name,String passwd) {
        this.name = name;
        this.passwd = passwd;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getPasswd() {
        return passwd;
    }

    public void setPasswd(String passwd) {
        this.passwd = passwd;
    }

    @Override
    public String toString() {
        return "UserFoo{" +
                "name=‘" + name +  +
                ",passwd=‘" + passwd +  +
                };
    }
}

要转换为json String 的对象一定要有set get 方法,

JSON.parSEObject 可以将json string 转为对应的object

该方法有两个参数

JSON.parSEObject(String text,Class<T> clazz),text为要转换的json string, clazz 要转换成的类
 

JSON.toJSONString (object? 2 jsonString)有两个重载方法:

toJSONString(Object object,SerializerFeature... features) 除了传入要转换的对象,还可以传入SerializerFeature 枚举,比如,将null list 转为空
toJSONString(Object object)只传入对象即可

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读