使用FastJSON 对Map/JSON/String 进行互转[通俗易懂]

使用FastJSON 对Map/JSON/String 进行互转[通俗易懂]Fastjson是一个Java语言编写的高性能功能完善的JSON库,由阿里巴巴公司团队开发的主要特性主要体现在以下几个方面:1.高性能fastjson采用独创的算法,将parse的速度提升到极致,超过所有json库,包括曾经号称最快的jackson。并且还超越了google的二进制协议protocolbuf。2.功能强大支持各种JDK类型。包括基本类型、JavaBean、Collection、Ma

大家好,又见面了,我是你们的朋友全栈君。

前言

Fastjson是一个Java语言编写的高性能功能完善的JSON库,由阿里巴巴公司团队开发的

1、主要特性

  • 高性能
    fastjson采用独创的算法,将parse的速度提升到极致,超过所有json库,包括曾经号称最快的jackson。并且还超越了google的二进制协议protocol buf。
  • 功能强大
    支持各种JDK类型。包括基本类型、JavaBean、Collection、Map、Enum、泛型等。
  • 无依赖
    不需要例外额外的jar,能够直接跑在JDK上。
  • 支持范围广
  • 开源

2、 用法

  1. String 转 Json
@Test
public void test(){
	String str = "{\"age\":\"24\",\"name\":\"cool_summer_moon\"}";	
	JSONObject  jsonObject = JSONObject.parseObject(str);
	System.out.println("json对象是:" + jsonObject);
	Object object = jsonObject.get("name");
	System.out.println("name值是:"+object);
}
运行结果:
		json对象是:{"name":"cool_summer_moon","age":"24"}
		name值是:cool_summer_moon
  1. Json 转 String
@Test
public void test(){
	String str = "{\"age\":\"24\",\"name\":\"cool_summer_moon\"}";
	JSONObject  jsonObject = JSONObject.parseObject(str);
	//json对象转字符串
	String jsonString = jsonObject.toJSONString();
	System.out.println("json字符串是:" + jsonString);
}
运行结果:
		json字符串是:{"name":"cool_summer_moon","age":"24"}
  1. String 转 Map
@Test
public void test(){
	String str = "{\"age\":\"24\",\"name\":\"cool_summer_moon\"}";
	JSONObject  jsonObject = JSONObject.parseObject(str);
	//json对象转Map
	Map<String,Object> map = (Map<String,Object>)jsonObject;
	System.out.println("map对象是:" + map);
	Object object = map.get("age");
	System.out.println("age的值是"+object);
}
运行结果:
		map对象是:{"name":"cool_summer_moon","age":"24"}
		age的值是24
  1. Map 转 String
@Test
public void test(){
	Map<String,Object> map = new HashMap<>();
	map.put("age", 24);
	map.put("name", "cool_summer_moon");
	String jsonString = JSON.toJSONString(map);
	System.out.println("json字符串是:"+jsonString);
}
运行结果:
		json字符串是:{"name":"cool_summer_moon","age":24}
  1. Map 转 Json
@Test
public void test(){
	Map<String,Object> map = new HashMap<>();
	map.put("age", 24);
	map.put("name", "cool_summer_moon");
	JSONObject json = new JSONObject(map);
	System.out.println("Json对象是:" + json);
}
运行结果:
		Json对象是:{"name":"cool_summer_moon","age":24}
  1. Json 转 Map
见示例3

结束语

附上下载链接:点击获取jar包地址

如果本篇文章对您有帮助的话,请点赞加关注。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/151283.html原文链接:https://javaforall.net

(1)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • import java.io 是什么意思_Java IO 详解

    import java.io 是什么意思_Java IO 详解JavaIO详解初学java,一直搞不懂java里面的io关系,在网上找了很多大多都是给个结构图草草描述也看的不是很懂。而且没有结合到java7的最新技术,所以自己来整理一下,有错的话请指正,也希望大家提出宝贵意见。首先看个图:(如果你也是初学者,我相信你看了真个人都不好了,想想java设计者真是煞费苦心啊!)这是javaio比较基本的一些处理流,除此之外我们还会提到一些比较深入的基于i…

    2022年6月7日
    33
  • PAT_A1137#Final Grading

    PAT_A1137#Final Grading

    2021年7月7日
    119
  • Spring Cloud版本与Spring Boot版本之间匹配关系「建议收藏」

    Spring Cloud版本与Spring Boot版本之间匹配关系「建议收藏」很多人在使用springboot和springcloud,但是对于这两者之间的版本关系不是很清楚,特别是在面临升级的时候不知道该如何操作。本文简要摘录的官方文档的部分内容作为依据,供广大同行参考。问题的提出,我现在使用的是1.5.1版本的springboot和Edgware.RELEASE版本的springcloud,我想升级到springboot到2.0.0,springcloud需要升…

    2022年4月30日
    71
  • matlab支持向量回归,支持向量回归 MATLAB代码

    matlab支持向量回归,支持向量回归 MATLAB代码支持向量回归MATLAB代码(2013-05-3116:30:35)标签:教育支持向量机和神经网络都可以用来做非线性回归拟合,但它们的原理是不相同的,支持向量机基于结构风险最小化理论,普遍认为其泛化能力要比神经网络的强。大量仿真证实,支持向量机的泛化能力强于神经网络,而且能避免神经网络的固有缺陷——训练结果不稳定。本源码可以用于线性回归、非线性回归、非线性函数拟合、数据建模、预测、分类等多种应…

    2022年6月6日
    99
  • sed文本处理工具

    sed文本处理工具

    2022年3月13日
    27
  • 增强版在线LEFSe分析和可视化鉴定标志性基因或物种

    增强版在线LEFSe分析和可视化鉴定标志性基因或物种LEfSe分析即LDAEffectSize分析,是一种用于发现和解释高维度数据生物标识(基因、通路和分类单元等)的分析工具,可以进行两个或多个分组的比较,它强调统计意义和生物相关性,…

    2022年6月10日
    51

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号