Java中fastjson、Jackson、Gson的使用:解析、序列化与反序列化

一、使用fastjson

Java中fastjson、Jackson、Gson的使用:解析、序列化与反序列化

fastjson 是阿里巴巴的一个开源 JSON 解析库。它具备解析 JSON 格式字符串的能力。它还支持把 Java Bean 序列化成 JSON 字符串。同时,它也能够从 JSON 字符串反序列化到 JavaBean。

依赖


        
            com.alibaba
            fastjson
            2.0.11.graal
        

介绍

User类(自定义的)

@AllArgsConstructor
@NoArgsConstructor
@Data
public class User {
    private String name;
    private String sex;
    private int age;
使用 @JsonFormat 注解,其 pattern 属性设置为 "yyyy-MM-dd HH:mm:ss",timezone 属性设置为 "GMT+8"。
    private Date birthday;
}

对象转json

//对象转json
使用 JSON.toJSONString 方法将 user 对象转换为字符串并赋值给 userJson 变量。
System 输出“userJson = ”与 userJson 进行拼接后的内容。

json转对象(Map也属于对象)

//json转Map
通过 JSON.parseObject 方法,将 userJson 解析为一个 Map 类型的对象,这个对象被赋值给了 Map 类型的变量 userMap。
System 输出打印出 "userMap = " 与 userMap 进行拼接后的内容。
 //json转对象
使用 JSON.parseObject 方法将 mapJson 解析为 User 类的对象,并赋值给 user1 。
System.out.println("用户 1 等于 " + user1);

二、 使用Jackson

Jackson 被称作“ Java 的 JSON 库”,也被称作“ Java 的最佳 JSON 解析器”。或者简称为“ JSON for Java”,并且它是 springboot 自带的 json 解析库。

1、依赖


    com.fasterxml.jackson.core
    jackson-annotations
    2.12.1

2、介绍

对象转json、json转对象


创建了一个 ObjectMapper 对象,其名称为 objectMapper 。
try {
     //对象转json
使用 objectMapper 将 user 转换为字符串并赋值给 userJson 。
System 会输出 "userJson = " 与 userJson 进行拼接后的内容。
     //json转对象
使用 objectMapper 将 userJson 读取为 User 类的实例,得到 User jsonUser 。
System 输出打印出 "jsonUser = " 与 jsonUser 进行拼接后的内容。
当捕获到由 JsonProcessingException 引发的异常时;
            e.printStackTrace();
     }

三、使用Gson

Gson 是一个用于 Java 语言的库。它能够把 Java 对象转换成 JSON 形式的表示。同时,它也可以把 JSON 字符串转化为与之等效的 Java 对象。Gson 具备处理各种 Java 对象的能力,其中也包括那些您没有源代码的已经存在的对象。

1、依赖


    com.google.code.gson
    gson
    2.8.6

2、介绍

// gson无法正常将时间戳转化成date
// 使用JSON内存树注册Date类型
Gson gson = new GsonBuilder()
.registerTypeAdapter(Date.class, 运用了 DateTypeAdapter())  // 默认适配器
 .create();
User user = new User();
user.setSex("女");
user.setName("xx");
user.setBirthday(new Date());
user.setAge(11);
System 输出打印出“user = ”与 user 进行拼接后的内容。
//对象转Json
使用 Gson 库将 user 对象转换为 JSON 字符串并赋值给 userJson 变量。
System.out.println("userJson = " + userJson);
//json转对象
使用 gson 将 userJson 转换为 User 类的实例,即创建了一个 User 对象,其数据来源于 userJson。
System.out.println("jsonUser 等于 " + jsonUser);

你可能想看:
« 上一篇
下一篇 »

相关推荐

java中什么是冒泡,冒泡算法

2026年09月06日

27阅读

java中冒号,java双冒号

2026年09月06日

25阅读

java中的->,java中的是什么意思

2026年09月06日

24阅读

java中的super用法,Java中super的说明

2026年09月06日

27阅读

java中反射的应用,java中反射的应用场景

2026年09月06日

23阅读

java中开关的定义,Java关键字有哪些

2026年09月06日

25阅读