Fastjson是一个Java语言编写的高性能功能完善的JSON库,由阿里巴巴公司团队开发的
主要特性主要体现在以下几个方面:

1.高性能

fastjson采用独创的算法,将parse的速度提升到极致,超过所有json库,包括曾经号称最快的jackson。并且还超越了google的二进制协议protocol buf。

2.功能强大

支持各种JDK类型。包括基本类型、JavaBean、Collection、Map、Enum、泛型等。

3.无依赖

不需要例外额外的jar,能够直接跑在JDK上。

4.支持范围广

5.开源

jar包及maven地址:http://download.csdn.net/download/cool_summer_moon/10146610

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

2、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"}

3、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

4、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}

5、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}

6、Json 转 Map

见示例3

---------------------
原文:https://blog.csdn.net/cool_summer_moon/article/details/78722623

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

  1. FastJSON 简介及其Map/JSON/String 互转

    在日志解析,前后端数据传输交互中,经常会遇到 String 与 map.json.xml 等格式相互转换与解析的场景,其中 json 基本成为了跨语言.跨前后端的事实上的标准数据交互格式.应该来说各个 ...

  2. java fastjson:Map与json以及JSONObject ,JSONObject与String互转

    import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson ...

  3. json与list,map,String之间的互转

    package tools; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import j ...

  4. 总结的一些json格式和对象/String/Map/List等的互转工具类

    总结的一些json格式和对象/String/Map/List等的互转工具类,有需要的可以看看,需要引入jackson-core-asl-1.7.1.jar.jackson-jaxrs-1.7.1.ja ...

  5. fastjson对象,JSON,字符串,map之间的互转

    1.对象与字符串之间的互转 将对象转换成为字符串 String str = JSON.toJSONString(infoDo); 字符串转换成为对象 InfoDo infoDo = JSON.pars ...

  6. fastjson在将Map<Integer, String>转换成JSON字符串时,出现中文乱码问题

    fastjson在将Map<Integer, String>转换成JSON字符串时,出现中文乱码问题. 先记下这个坑,改天在看看是怎么导致的,暂时通过避免使用Integer作为键(使用St ...

  7. Json、JavaBean、String等互转

    Json.JavaBean.String等互转 本文介绍简单的Json.JavaBean.String互换(下文JavaBean简称Object对象,这里不是很严谨) 转换关系如下: 其中String ...

  8. 利用阿里巴巴封装的FastJSON来解析json并转换成map

    利用阿里巴巴封装的FastJSON来解析json并转换成map   package com.zkn.newlearn.json; import com.alibaba.fastjson.JSON; i ...

  9. javaBean与Map<String,Object>互转

    背景:有时候想不通阿帕奇的BeanUtils是怎么进行map和Bean互相转化的. 工作闲暇之余,自己写个一小段代码,一探究竟,试试才发现,原来一切并非我们想的那么什么和复杂. 注:这里只是简单实例, ...

随机推荐

  1. Python之pandas读取mysql中文乱码问题

    # -*- coding: utf-8 -*- # author:baoshan import pandas as pd import pymysql config = { "host&qu ...

  2. 品优购商城项目(五)消息中间件 ActiveMQ

    消息中间件用于降低各个项目模块的耦合,适用于不需要等待返回消息才能进入下一个业务环节的模块,以及实时要求性不高的业务模块. 一.JMS JMS(Java Messaging Service)是Java ...

  3. 泡泡一分钟:Learning Motion Planning Policies in Uncertain Environments through Repeated Task Executions

    张宁  Learning Motion Planning Policies in Uncertain Environments through Repeated Task Executions 通过重 ...

  4. 几个支持 FreeSWITCH 的网络电话的安装与使用(linphone、MicroSIP、Sipdroid)

    Ubuntu 安装 Linphone 安装命令 apt-get install linphone 安装完成后,在应用程序 --> 互联网 下就能看到 linphone,打开后注册 注意:linp ...

  5. java8 用Optional取代null

    如何处理null 怎样做才能避免不期而至的NullPointerException呢?通常,可以在需要的地方添加null的检查(过于激进的防御式检查甚至会在不太需要的地方添加检测代码),并且添加的方式 ...

  6. [LeetCode] 361. Bomb Enemy 炸敌人

    Given a 2D grid, each cell is either a wall 'W', an enemy 'E' or empty '0' (the number zero), return ...

  7. 删除Win10自动下载的更新安装包

    当我们禁止了系统的自动更新后,会感觉还有什么东西没做,没错,你还没有删除系统自动下载好的安装包,如果不删除的话会白白浪费磁盘空间!那么系统自动下载的安装包在哪里呢? C盘Windows—Softwar ...

  8. 给通过canvas生成的二维码添加logo

    以jquery.qrcode为例来说, 生成二维码代码: 依赖jquery.js, jquery.qrcode.js //计算宽,高,中心坐标,logo大小 var width = 256,heigh ...

  9. PHP字符串替换

    $pid = str_replace(',',',',$pid); $pid = str_replace(' ','',$pid); $pid = str_replace(array(',', ' ' ...

  10. Callable+Future

    Future提供了三种功能: 1)判断任务是否完成: 2)能够中断任务: 3)能够获取任务执行结果 package com.moreas; import java.util.concurrent.Ca ...