fastjson中的序列化与反序列化

在 Java 领域,JSON 作为轻量级数据交换格式广泛使用。对于高性能、高并发场景,选择一个高效的 JSON 序列化和反序列化库非常重要。Fastjson 是由阿里巴巴开发的开源 JSON 处理库,以其卓越的性能和简洁的 API 设计深受开发者喜爱。

后端常用的JSON序列化与反序列化的技术

首先我们引入依赖

<!-- JSON 解析器和生成器 -->
<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>fastjson</artifactId>
    <version>1.2.83</version>
</dependency>

那我们一般项目中最常用的就是JSON.toJSONString和JSON.parseObject,这可以简单理解为js中的JSON.stringify和JSON.parse,下面是个简单的例子:

Map<String, Object> map = new HashMap<>();
map.put("name", "WFT111");
map.put("age", 18);
// 序列化为字符串
String str = JSON.toJSONString(map);
System.out.println(str);
// 将字符串反序列化为对象
Map data = JSON.parseObject(str, Map.class);
System.out.println(data);

fastjson中的除了上面的之外还有JSONObject.toJSONString()和JSONObject.parseObject()方法,也可以转为字符串,但使用场景可能有所不同。

  • 适用对象不同:JSON.toJSONString可以直接序列化任意Java对象(包括自定义类),而 JSONObject.toJSONString仅适用于 JSONObject类型的对象。

  • 调用方式不同:JSON.toJSONString是静态方法,可以直接通过类名调用;JSONObject.toJSONString 是实例方法,必须通过 JSONObject的实例来调用。

  • 功能侧重点:如果你需要序列化任何类型的Java对象到JSON字符串,通常会使用 JSON.toJSONString。如果你已经有一个 JSONObject并且想得到它的字符串表示,那么你会使用 JSONObject.toJSONString。

在实际开发中,如果只是简单的对象到JSON字符串的转换,JSONO.toJSONString 通常是更通用的选择 ,因为它可以接受任何Java类型的对象

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

会说法语的猪

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值