JSON.parseObject(String str)和JSON.toJSONString()的区别?

本文介绍了JSON格式及其在数据交换中的重要性。重点讲解了JSON.parseObject(String str)方法,该方法用于将JSON字符串转化为JSONObject对象,以及JSON.toJSONString()方法,用于将对象转换成JSON格式的字符串。通过示例展示了这两个方法的使用。
摘要由CSDN通过智能技术生成

在刚刚毕业步入之后的工作过程中,看到公司的代码频繁的使用JSON,在学校的时候基本只有了解,也没有很多的去使用过,在看了一段时间代码后,总结了JSON中最常使用的几个方法!

一、JSON格式

什么是JSON?

JSON (JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式。它基于 ECMAScript (w3c制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。
数据传输是我们在敲代码时,经常遇到的一个场景,前后端交互。给数据一个统一的格式有利于我们编写和解析数据。
json,是一种数据格式,在与后端的数据交互中有较为广泛的应用。

举例?

		JSONObject jsonObject = new JSONObject();
        jsonObject.put("username","zs");
        jsonObject.put("pwd","1234");
        System.out.println(jsonObject);

输出JSON格式:

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
这段代码是一个使用 FastJson 序列化和反序列化对象的 Redis 序列化器。下面是对这段代码的注释: ```java public class FastJsonRedisSerializer<T> implements RedisSerializer<T> { public static final Charset DEFAULT_CHARSET = StandardCharsets.UTF_8; // 默认字符集为 UTF-8 private final Class<T> clazz; // 要序列化和反序列化的对象类型 static { ParserConfig.getGlobalInstance().setAutoTypeSupport(true); // 设置 FastJson 全局配置,开启自动类型支持 } public FastJsonRedisSerializer(Class<T> clazz) { super(); this.clazz = clazz; // 初始化对象类型 } @Override public byte[] serialize(T t) throws SerializationException { if (t == null) { return new byte[0]; // 如果对象为空,返回空字节数组 } return JSON.toJSONString(t, SerializerFeature.WriteClassName).getBytes(DEFAULT_CHARSET); // 使用 FastJson 将对象转换为 JSON 字符串,并转换为字节数组 } @Override public T deserialize(byte[] bytes) throws SerializationException { if (bytes == null || bytes.length <= 0) { return null; // 如果字节数组为空,返回空对象 } String str = new String(bytes, DEFAULT_CHARSET); // 将字节数组转换为字符串 return JSON.parseObject(str, clazz); // 使用 FastJson 将字符串解析为指定的对象类型 } protected JavaType getJavaType(Class<?> clazz) { return TypeFactory.defaultInstance().constructType(clazz); // 获取 JavaType 对象,用于序列化和反序列化 } } ``` 这个类实现了 RedisSerializer 接口,并使用 FastJson 库来进行对象的序列化和反序列化操作。它通过构造方法传入要序列化和反序列化的对象类型,并提供了 `serialize` 和 `deserialize` 方法来实现对象和字节数组之间的转换。在静态代码块中,设置了 FastJson 的全局配置,开启自动类型支持。该类还提供了一个受保护的方法 `getJavaType`,用于获取 JavaType 对象,用于序列化和反序列化操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值