使用FastJSON 对Map/JSON/String 进行互转

2023-05-16

前言

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

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

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用FastJSON 对Map/JSON/String 进行互转 的相关文章

随机推荐

  • slcan 协议 脚本 测试

    文章目录 slcan 协议kernel slcancan utils slcanptycan utils slcandcan utils slcan attachpython slcan slcan 协议 slcan 基于文本 ASCII
  • Notepad++直接编译运行Java

    安装Notepad 43 43 和JDK xff08 略 xff09 xff1b Notepad 43 43 的菜单栏 xff1a 插件 gt Plugin Manager gt Show Plugin Manager xff0c Avai
  • 几款自带编码器的直流电机

    不少小伙伴做两轮自平衡车或者机器人或者各种比赛时 xff0c 经常需要用到直流电机带编码器 xff0c 有的自己可以做外置的编码器 xff0c 但是否有自带编码器或码盘的直流电机 xff1f 答案是肯定的 xff0c 这里就推荐几款带编码器
  • 四大编辑器 -- Sublime, Atom, VS Code和Notepad++

    主要介绍3个跨平台的 Sublime Atom VS Code 一个Windows的 Notepad 43 43 Sublime Text 官网 https www sublimetext com Sublime Text is a sop
  • AD绘制四层板

    原理图导入PCB后 默认是双层板 可以Design gt Layer Stack Manager 点击Top Layer 然后点击Add Plane 负片层 电脑上在此层走线表示把铜挖空 这里把一整层都当作GND 非GND的过孔打到这一层
  • 群晖(Synology)配置 NAS + 软路由

    文章目录 背景结论软路由配置 背景 老板上周兴致勃勃的找到我 说Macbook存储不够用了 帮他找个存东西的 不是移动硬盘 我也很懵逼 我搞活动捡便宜充的百度网盘超级会员 觉得自己很是尾巴翘上天的土豪了 但想到老板的身价 又不太清楚macb
  • 各种类型的Writable

    各种类型的Writable xff08 Text ByteWritable NullWritable ObjectWritable GenericWritable ArrayWritable MapWritable SortedMapWri
  • C++ strtok的用法

    size 61 large align 61 center strtok的用法 align size 函数原型 xff1a char strtok char s char delim 函数功能 xff1a 把字符串s按照字符串delim进行
  • 读《遇见未知的自己》笔记

    为什么我不快乐 xff1f 为什么我不能拥有自己想要的生活 xff1f 此刻屏幕前的你 是否想过 xff0c 自己为什么会出现这种情况呢 xff1f 张德芬在 遇见未知的自己 一书给出了解释 xff1a 我们人类所有受苦的根源就是来自不清楚
  • PX4飞控问题汇总

    接触PX4飞控代码一年多了 xff0c 代码都是模块化 开发起来比APM的方便 xff0c 使用过程中也出现过各种怪异问题 xff0c 用的硬件是V5 nano 和V5 43 xff0c 测试的代码版本是1 9和1 10 今天总结一下遇到过
  • Sumo 搭建交叉路口交通流仿真平台

    Sumo安装 注意事项 xff1a 需要工具的使用需要环境变量的设置 需要包含文件Sumo安装路径下的bin和tools Sumo配置文件 Sumo中项目的配置文件的组成如下所示 节点文件 图 1 节点及边的拓扑图 Node的属性主要有id
  • OpenWRT 各种烧录方式及量产(三)

    界面烧录 不更新uboot 电脑连接WIFI xff08 或者通过网线连接电脑与路由器 xff09 通过浏览器访问路由器管理界面 xff0c 进行升级 注意不要断电 xff01 xff01 xff01 xff08 断电只能通过tftp方式恢
  • 华为手机root

    首先手机已解锁 xff42 xff4c 此方法针对 华为手机 可使用 xff0c 其他手机没有测试 xff0c 但应该也可以 官方的twrp没有对mate xff19 进行配适 xff0c 可以使用奇兔 twrp 提取码 ax6d 如果你没
  • 阿里云ubuntu 16.04 Server配置方案 2 远程控制桌面

    通过远程控制 xff0c 更好的管理服务器 1 XRDP远程控制 为了更好的远程管理 xff0c linux一般情况都用VNC进行远程连接 xff0c 如 TightVNC X11VNC ReadVNC等 Xrdp 是开放原始码的远端桌面通
  • 自顶向下(top down)简介

    无论是在实际生活中还是在学术问题上 xff0c 复杂的问题比比皆是 xff0c 当我们对此类问题毫无头绪的时候 xff0c 自顶向下 xff08 top down xff09 为我们提供了一种可靠的解决方法 自顶向下法将复杂的大问题分解为相
  • SecureCRT图形界面(通过设置调用Xmanager - Passive程序)

    首先 xff0c 在服务器进行设置 如果服务器是图形化界面启动的 xff0c xhost 43 命令可以不用执行 root 64 test xhost 43 xhost unable to open display 34 34 设置disp
  • 一种GPS辅助的多方位相机的VIO——Slam论文阅读

    34 A GPS aided Omnidirectional Visual Inertial State Estimator in Ubiquitous Environments 34 论文阅读 这里写目录标题 34 A GPS aided
  • docker & LXC

    目录 一 LXC1 了解Docker的前生LXC2 LXC与docker的关系3 与传统虚拟化对比4 LXC部署4 1 安装LXC软件包和依赖包4 2 启动服务4 3 创建虚拟机 5 LXC常用命令 二 doker1 什么是docker2
  • curl命令总结

    curl no cache d Users Administrator Desktop curl 7 73 0 3 win64 mingw bin gt curl Iv http abc gkmang cn 8081 index php l
  • 使用FastJSON 对Map/JSON/String 进行互转

    前言 Fastjson是一个Java语言编写的高性能功能完善的JSON库 xff0c 由阿里巴巴公司团队开发的 1 主要特性 高性能 fastjson采用独创的算法 xff0c 将parse的速度提升到极致 xff0c 超过所有json库