Java:JSON与Map相互转换

需要jar包:jackson-core-2.6.0.jar,jackson-databind-2.6.0.jar,jackson-annotations-2.6.0.jar

1. JSON String to Map

package com.inspur.trc.util;

import java.util.HashMap;
import java.util.Map;

import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper;

public class Json2Map {
    public static void main(String[] args) {
        String json = "{\"name\":\"zitong\", \"age\":\"26\"}";
        Map<String, String> map = new HashMap<String, String>();
        ObjectMapper mapper = new ObjectMapper();

try{
            map = mapper.readValue(json, new TypeReference<HashMap<String,String>>(){});
            System.out.println(map);
        }catch(Exception e){
            e.printStackTrace();
        }
    }
}
运行结果:
{age=26, name=zitong}
2. Map to JSON String

package com.inspur.trc.util;

import java.util.HashMap;
import java.util.Map;

import com.fasterxml.jackson.databind.ObjectMapper;

public class Map2Json {
    public static void main(String[] args){
        try{
            ObjectMapper mapper = new ObjectMapper();
            String json = "";

Map<String, String> map = new HashMap<String,String>();
            map.put("name", "zitong");
            map.put("age", "26");

json = mapper.writeValueAsString(map);

System.out.println(json);
        }catch(Exception e){
            e.printStackTrace();
        }
    }
}
运行结果:
{"age":"26","name":"zitong"}
3. Map to JSON File

package com.inspur.trc.util;

import java.io.File;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import com.fasterxml.jackson.databind.ObjectMapper;

public class Map2JsonFile {
    public static void main(String[] args) {
        ObjectMapper mapper = new ObjectMapper();
        Map<String, Object> map = new HashMap<String, Object>();
        map.put("name", "zitong");
        map.put("age", 29);

List<Object> list = new ArrayList<Object>();
        list.add("music");
        list.add("football");

map.put("hobby", list);

try {
            mapper.writeValue(new File("F:/user.json"), map);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
运行结果:F:/user.json
{"age":29,"name":"zitong","hobby":["music","football"]}
4. JSON File To Map

package com.inspur.trc.util;

import java.io.File;
import java.util.List;
import java.util.Map;

import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper;

public class JsonFile2Map {
    public static void main(String[] args) {
        try{
            ObjectMapper mapper = new ObjectMapper();

Map<String, Object> map = mapper.readValue(new File("F:/user.json"),new TypeReference<Map<String, Object>>(){});

System.out.println("name: " + map.get("name"));
            System.out.println("age: " + map.get("age"));

@SuppressWarnings("unchecked")
            List<String> list = (List<String>)map.get("hobby");
            System.out.print("hobby: ");
            for(String str : list){
                System.out.print(str+ " ");
            }

}catch(Exception e){
            e.printStackTrace();
        }
    }
}
运行结果:
name: zitong
age: 29
hobby: music football

阅读原文

Java:JSON和Map相互转换的更多相关文章

  1. java json与map互相转换(二)

      java json与map互相转换(二) CreationTime--2018年7月16日15点09分 Author:Marydon 1.准备工作 所需jar包: commons-beanutil ...

  2. java json与map互相转换(一)

      java json与map互相转换(一) CreationTime--2018年7月16日 Author:Marydon 1.准备工作 所需jar包:json-20180130.jar impor ...

  3. java JSON 和 Object 相互转换

    1.导入 jackson jar <dependency> <groupId>com.fasterxml.jackson.core</groupId> <ar ...

  4. JAVA中利用反射机制进行对象和Map相互转换的方法

    JAVA的反射机制主要作用是用来访问对象的属性.方法等等.所以,JAVA中对象和Map相互转换可以利用JAVA的反射机制来实现.例子如下: 一.对象转Map的方法 public static Map& ...

  5. java中对象转json,json转list,json转map

    在IDEA中的springboot项目里写的一个测试例子,新建User类,四个字段,Long id , String password,String userName,int age; 以及带参构造, ...

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

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

  7. Java json串生成及转bean

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

  8. java json 的生成和解析 --json-lib

    类(java json的解析和生成): import java.util.HashMap; import java.util.Map; import net.sf.json.JSONArray; im ...

  9. Java json工具类,jackson工具类,ObjectMapper工具类

    Java json工具类,jackson工具类,ObjectMapper工具类 >>>>>>>>>>>>>>> ...

随机推荐

  1. php workerman定时任务

    一.下载workerman https://www.workerman.net/download 二.下载workerman/mysql http://doc3.workerman.net/64020 ...

  2. Flask 开启多进程或多线程

    2018-07-15 23:31:20 yang9315 阅读数 7703更多 分类专栏: python   版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接 ...

  3. PAT甲级1017题解——模拟排序

    题目分析: 本题我第一次尝试去做的时候用的是优先队列,但是效率不仅代码量很大,而且还有测试样例过不去,很显然没有找到一个好的数据结构来解决这道题目(随着逐渐的刷PAT甲级的题会发现有时选择一个好的解题 ...

  4. PAT 乙级 1071.小赌怡情 C++/Java

    题目来源 常言道“小赌怡情”.这是一个很简单的小游戏:首先由计算机给出第一个整数:然后玩家下注赌第二个整数将会比第一个数大还是小:玩家下注 t 个筹码后,计算机给出第二个数.若玩家猜对了,则系统奖励玩 ...

  5. 【比赛游记】THUSC2019酱油记

    往期回顾:THUWC2019酱油记 时间过得真快呐-- 上次在 THUSC 手玩 AI 的情景还未走远,明天却要迎来全新一年的赛事了-- 掐指一算,作为一个真正的 OIer 的时光也不多了啊 day ...

  6. Lombok 学习资料

    Lombok 学习资料 网址 Lombok 官方网站 https://projectlombok.org/features/all Lombok:让JAVA代码更优雅 http://blog.didi ...

  7. 微服务学习之路(三)——实现RPC远程服务调用

    RPC(Remote Producedure Call)调用原理:服务消费者称为客户端,服务提供者称为服务端,处于不同网络地址,需要建立网络连接.建立连接后,双方还必须按照某种约定的协议进行网络通讯— ...

  8. post Cache

    http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html#sec9.5 POST The POST method is used to request ...

  9. js的类型系统--js基于原型的基石是所有对象最终都能够类型自证

    一.动态类型 变量能够类型自证的类型即为动态类型 二.基础与内置类型 三.对象与类型的关系 1.对象本身能够自证为基本类型: 2.元原型可能为一个空的集合: 3.复合对象的成员能够自证为基本类型: 4 ...

  10. 硬币游戏1——打表&&记忆化搜索

    题目 Alice和Bo在玩这样一个游戏,给定 $k$ 个数字 $a_1, a_2,..,a_k$.一开始有 $x$ 枚硬币,Alice和Bob轮流取硬币.每次所取的硬币的枚数一定要在 $k$ 个数当中 ...