一文搞定—FastJson详解 与 使用

FastJson详解 与 使用

1. Fastjson 的主要功能

2. 快速开始

2.1 对象与 JSON 字符串的转换

2.2 List 与 JSON 字符串的转换

3. 注解支持

4. JSONPath 查询

5. 性能与安全

6. 版本与兼容性

7.常用方法

7.1 JSON.toJSONString(Object object)

7.2 JSON.parseObject(String text, Class clazz)

7.3 JSON.parseArray(String text, Class clazz)

7.4 JSON.toJavaObject(JSONObject jsonObject, Class clazz)

7.5 JSONObject 类

7.6 JSONArray 类

7.7 反序列化为泛型类型

8.配置选项 

8.1 SerializerFeature

8.2 ParserConfig

 9.总结


🎈边走、边悟🎈迟早会好

   Fastjson 是阿里巴巴开源的一个高性能 Java JSON 处理库,广泛应用于 Java 开发中。它提供了序列化(将 Java 对象转换为 JSON 字符串)和反序列化(将 JSON 字符串转换为 Java 对象)的功能。与其他 JSON 处理库相比,Fastjson 以其速度快、使用简单、功能强大而著称。

1. Fastjson 的主要功能

  • 序列化和反序列化:将 Java 对象转换为 JSON 字符串,或者将 JSON 字符串转换为 Java 对象。
  • 支持泛型:能够处理泛型数据类型的序列化和反序列化。
  • JSONPath 支持:类似于 XPath 的语法,可以方便地查询 JSON 数据。
  • 注解支持:支持通过注解自定义序列化和反序列化行为。

2. 快速开始

要使用 Fastjson,首先需要在项目中添加 Maven 依赖:

<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>fastjson</artifactId>
    <version>1.2.83</version>
</dependency>
2.1 对象与 JSON 字符串的转换

序列化:将 Java 对象转换为 JSON 字符串

import com.alibaba.fastjson.JSON;

public class FastjsonExample {
    public static void main(String[] args) {
        User user = new User();
        user.setId(1);
        user.setName("John Doe");

        // 序列化
        String jsonString = JSON.toJSONString(user);
        System.out.println(jsonString); // 输出:{"id":1,"name":"John Doe"}
    }
}

class User {
    private int id;
    private String name;

    // getter 和 setter 方法
    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

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

反序列化:将 JSON 字符串转换为 Java 对象 

import com.alibaba.fastjson.JSON;

public class FastjsonExample {
    public static void main(String[] args) {
        String jsonString = "{\"id\":1,\"name\":\"John Doe\"}";

        // 反序列化
        User user = JSON.parseObject(jsonString, User.class);
        System.out.println(user.getName()); // 输出:John Doe
    }
}
2.2 List 与 JSON 字符串的转换

序列化:将 List 转换为 JSON 字符串

import com.alibaba.fastjson.JSON;
import java.util.ArrayList;
import java.util.List;

public class FastjsonExample {
    public static void main(String[] args) {
        List<User> users = new ArrayList<>();
        users.add(new User(1, "John Doe"));
        users.add(new User(2, "Jane Doe"));

        // 序列化
        String jsonString = JSON.toJSONString(users);
        System.out.println(jsonString); // 输出:[{"id":1,"name":"John Doe"},{"id":2,"name":"Jane Doe"}]
    }
}

 反序列化:将 JSON 字符串转换为 List


                
评论 39
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值