映入眼帘的JSON-fastjson常见用法

多年以前一直用XML,xml格式几乎成了当时一种传输数据的标准,soap中,甚至http中皆传xml。直到有一天json出现了。

 

有关xml与json对比的文章,网上一大堆,个人认为实在没有必要。因为这是两个不同的东西。都有用武之地。

 

xml的定义《维基百科https://zh.wikipedia.org/wiki/XML》:

可扩展标记语言英语:Extensible Markup Language,简称:XML),是一种标记语言标记指计算机所能理解的信息符号,通过此种标记,计算机之间可以处理包含各种信息的文章等。如何定义这些标记,既可以选择国际通用的标记语言,比如HTML,也可以使用像XML这样由相关人士自由决定的标记语言,这就是语言的可扩展性。XML是从标准通用标记语言(SGML)中简化修改出来的。它主要用到的有可扩展标记语言、可扩展样式语言(XSL)、XBRLXPath等。

 

json的定义《维基百科https://zh.wikipedia.org/wiki/JSON》:

JSON(JavaScript Object Notation)是一种由道格拉斯·克罗克福特构想设计、轻量级的数据交换语言,以文字为基础,且易于让人阅读。尽管JSON是Javascript的一个子集,但JSON是独立于语言的文本格式,并且采用了类似于C语言家族的一些习惯。

JSON 数据格式与语言无关,脱胎于 JavaScript,但目前很多编程语言都支持 JSON 格式数据的生成和解析。JSON 的官方 MIME 类型是 application/json,文件扩展名是 .json

 

从定义即可看出,xml强调的是语言,json强调的是数据格式。

 

好了重点说下我们在json中常用的需求吧,目前大部分都是使用的fastjson。

<dependency>
     <groupId>com.alibaba</groupId>
     <artifactId>fastjson</artifactId>
     <version>1.2.20</version>
</dependency>

 

我们常用的需求及用法如下:

json字符串-POJO对象

JSONObject jsonObject = JSON.parseObject(json);

 

POJO对象-json字符串

JSONObject jsonMsg = new JSONObject();
jsonMsg.put("content",content);
jsonMsg.put("orderId",orderId);
String jsonResult = JSONObject.toJSONString(jsonMsg);

 

集合-json字符串

这类常见于,我将集合序列化之后放入redis

redisUtil.set(String.valueOf(venderId), JSON.toJSONString(list));

 

json字符串-集合

从redis中取出,反序列话成对象

String value = redisUtil.get(String.valueOf(venderId));
list =JSON.parseArray(value, AnycallVender.class);

 

 

这些需求fastjson都能轻松的处理,还有更多的用法,可以参考:https://github.com/alibaba/fastjson/wiki/%E5%B8%B8%E8%A7%81%E9%97%AE%E9%A2%98

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值