前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >json转map

json转map

作者头像
IT云清
发布2019-01-22 11:14:30
3K0
发布2019-01-22 11:14:30
举报
文章被收录于专栏:IT云清IT云清
java中map和json互转工具类,注意方法示例的格式(这里是最简单的无嵌套的格式),不满足此格式的不合适:
代码语言:javascript
复制
package com.yscredit.sz.util;

import com.alibaba.fastjson.JSON;
import org.apache.commons.collections.map.LinkedMap;
import org.codehaus.jackson.map.ObjectMapper;

import java.util.ArrayList;
import java.util.List;
import java.util.Map;

/**
 * Author: momo
 * Date: 2018/5/7
 * Description:map和json互转工具类
 */
public class MapJsonUtil {

    public static void main(String[] args){
        Map<String,Object> map = new LinkedMap();
        map.put("title","国务院2号文件");
        map.put("attach","根据中华人民共和国");
        String s = mapToJson(map);

        Map<String,Object> map2 = new LinkedMap();
        map2.put("title","省委三号文件");
        map2.put("attach","本次大会研究决定");
        System.out.println(map2);
        String s2 = mapToJson(map2);

        mapListToJson(map,map2);
    }


    /**
     * map转json
     * @param map        {title=国务院2号文件, attach=根据中华人民共和国}
     * @return  json     {"title":"国务院2号文件","attach":"根据中华人民共和国"}
     */
    public static String mapToJson(Map<String,Object> map){
        ObjectMapper obm = new ObjectMapper();
        String param = null;
        try {
            param = obm.writeValueAsString(map);
            return param;
        }catch (Exception ex){
            throw new RuntimeException("map转json出错",ex);
        }
    }

    /**
     * json转map
     * @param jsonStr   {"title":"国务院2号文件","attach":"根据中华人民共和国"}
     * @return  map     {title=国务院2号文件, attach=根据中华人民共和国}
     */
    public static Map<String,Object> jsonToMap(String jsonStr){
        try {
            Map<String,Object> map2= JSON.parseObject(jsonStr,LinkedMap.class);
            return map2;
        }catch (Exception ex){
            throw new RuntimeException("json转map出错",ex);
        }
    }

    /**
     * List<Map<String,Object>>转json
     * @param args  {title=国务院2号文件, attach=根据中华人民共和国}  {title=省委三号文件, attach=本次大会研究决定} ...
     * @return String       [{"title":"国务院2号文件","attach":"根据中华人民共和国"}, {"title":"省委三号文件","attach":"本次大会研究决定"}]
     */
    public static String mapListToJson(Map<String,Object> ...args){
        List<Object> list = new ArrayList<>();
        ObjectMapper obm = new ObjectMapper();
        try {
            if(args.length > 0){
                for (int i = 0,length = args.length;i < length;i++){
                    list.add(obm.writeValueAsString(args[i]));
                }
            }
            return list.toString();
        }catch (Exception ex){
            throw new RuntimeException("List<Map<String,Object>>转json出错",ex);
        }
    }
}
用到的阿里的fastjson依赖:
代码语言:javascript
复制
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>1.2.32</version>
        </dependency>
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018年05月07日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • java中map和json互转工具类,注意方法示例的格式(这里是最简单的无嵌套的格式),不满足此格式的不合适:
  • 用到的阿里的fastjson依赖:
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档