fastjson常用方法总结

fastjson常用方法

简介

Fastjson是一个Java语言编写的高性能功能完善的JSON库。fastjson采用独创的算法,将parse的速度提升到极致,超过所有json库,包括曾经号称最快的jackson。并且还超越了google的二进制协议protocol buf。Fastjson完全支持http://json.org的标准,也是官方网站收录的参考实现之一。支持各种JDK类型。包括基本类型、JavaBean、Collection、Map、Enum、泛型等。支持JDK 5、JDK 6、Android、阿里云手机等环境。

4种常用类型:JavaBean,List<JavaBean>,List<String>,List<Map<String,Object>

示例代码

package com.yuanyuan;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import org.junit.Test;

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;

public class FastJsonTest {

    /**
     * javabean转json
     * 
     * 运行结果{"name":"奥迪","price":300000}
     */
    @Test
    public void obj2Json(){
        Car car = new Car();
        car.setName("奥迪");
        car.setPrice(300000.00);
        String carStr = JSON.toJSONString(car);
        System.out.println(carStr);
    }

    /**
     * 数组转json
     * 
     * 运行结果[{"name":"奥迪","price":300000},{"name":"大众","price":100000}]
     */
    @Test
    public void array2Json(){
        Car car1 = new Car("奥迪",300000.00);
        Car car2 = new Car("大众",100000.00);
        Car[] carArr = {car1,car2};
        String carStr = JSON.toJSONString(carArr);
        System.out.println(carStr);
    }

    /**
     * list转Json
     * 
     * 运行结果[{"name":"奥迪","price":300000},{"name":"大众","price":100000}]
     */
    @Test
    public void list2Json(){
        Car car1 = new Car("奥迪",300000.00);
        Car car2 = new Car("大众",100000.00);
        List<Car> list = new ArrayList<>();
        list.add(car1);
        list.add(car2);
        String listStr = JSON.toJSONString(list);
        System.out.println(listStr);
    }

    /**
     * map转Json
     * 
     * 运行结果{"car2":{"name":"大众","price":100000},"car1":{"name":"奥迪","price":300000}}
     */
    @Test
    public void map2Json(){
        Car car1 = new Car("奥迪",300000.00);
        Car car2 = new Car("大众",100000.00);
        Map<String, Car> map = new HashMap<>();
        map.put("car1", car1);
        map.put("car2", car2);
        String mapStr = JSON.toJSONString(map);
        System.out.println(mapStr);
    }


    /**
     * Json转javabean
     * 
     * 运行结果 Car [name=大众, price=100000.0]
     */
    @Test
    public void json2Javabean(){
        String jsonStr = "{'name':'大众','price':100000}";
        Car car = JSON.parseObject(jsonStr, Car.class);
        System.out.println(car);
    }

    /**
     * Json转数组
     * 
     * 运行结果["aaa","bbb","ccc"]
     */
    @Test
    public void json2Array(){
        String jsonStr = "['aaa','bbb','ccc']";
        JSONArray jsonArray = JSON.parseArray(jsonStr);
        System.out.println(jsonArray);
    }

    /**
     * Json转对应的javabean集合
     * 
     * 运行结果Car [name=奥迪, price=300000.0] Car [name=大众, price=100000.0]
     */
    @Test
    public void json2List(){
        String jsonStr = "[{'name':'奥迪','price':300000},{'name':'大众','price':100000}]";
        List<Car> parseList = JSON.parseArray(jsonStr, Car.class);
        for (Car car : parseList) {
            System.out.println(car);
        }
    }
}

常用方法总结

//可以将javabean,Array,List等转成Json
JSON.toJSONString()

//将json串转成相应的Javabean对象
JSON.parseObject(String, Class)

//将json串转成jsonArray
JSON.parseArray(String)

//将json串转成对应发Javabean集合
JSON.parseArray(String, Class)

java工程需要导入jar包

maven工程需要添加依赖

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值