使用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包地址

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

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

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

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(1)


相关推荐

  • 在C#中ParameterizedThreadStart和ThreadStart区别

    在C#中ParameterizedThreadStart和ThreadStart区别
    不需要传递参数,也不需要返回参数
      我们知道启动一个线程最直观的办法是使用Thread类,具体步骤如下:
    ThreadStartthreadStart=newThreadStart(Calculate);Threadthread=newThread(threadStart);thread.Start();publicvoidCalculate(){ doubleDiameter=0.5; Console.Write(“T

  • ffplay播放器移植VC的工程:ffplay for MFC

    ffplay播放器移植VC的工程:ffplay for MFCffplay播放器移植VC的工程:ffplayforMFC本文介绍一个自己做的FFPLAY移植到VC下的开源工程:ffplayforMFC。本工程将ffmpeg项目中的ffplay播放器(ffplay.c)移植到了VC的环境下。并且使用MFC做了一套简单的界面。它可以完成一个播放器播放视频的基本流程:解协议,解封装,视频/音频解码,视音频同步,视音频输出。此外还包含一些控制功能:播放,暂停/继

  • 标准正态分布的分布函数服从均匀分布_二项分布和均匀分布

    标准正态分布的分布函数服从均匀分布_二项分布和均匀分布三种由(0,1)均匀分布构造标准正态分布随机变量的方法:Box–Muller算法,中心极限定理和KindermanandMonahanmethod。

  • ES6中set和map「建议收藏」

    ES6中set和map「建议收藏」一。set数据容器能够存储无重复值数据的有序列表1.通过newset()方法创建容器通过add()方法添加2.set.size获取存储的数据的数量例: varset=newSet() set.add(1); set.add(‘1’); console.log(set)console.log(set.size)3.Set内部使用Obj…

  • MyBatis中Like语句使用方式

    Mybatis中Like的使用,防止Sql注入

  • 简述信道带宽的概念_传输信道带宽是什么意思

    简述信道带宽的概念_传输信道带宽是什么意思在写这篇文章之前我一直对“带宽”这个用语比较迷惑,比如我们通常说“带宽10M的网络”,“网络带宽是10M”等等,很容易跟信道的带宽比如10MHZ、100MHZ相混淆。我查阅了相关的资料,终于在通信和电路上将这两个概念彻底搞清楚了。1、网络带宽我们通常口头上说的网络带宽,用标准的术语来说应该是信道容量,单位为比特每秒(bit/s)。在通信原理中用香农公式计算出…

    2022年10月11日

发表回复

您的电子邮箱地址不会被公开。

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