在Java中将HashMap写入JSON

我是Java的新手.我一直在研究一个使用Maven和Java 1.7的项目.在我的项目中,我有一个HashMap.我想将此HashMap输出到JSON.目前推荐的方法是什么?

当我进行谷歌搜索时,我会得到很多选择(即杰克逊).但是,我不确定我应该使用什么.另外,我想使用可通过Maven访问的库.

谢谢,

最佳答案
您可以使用Google GSON库.

只需将其添加到您的pom

<dependency>
    <groupId>com.google.code.gson</groupId>
    <artifactId>gson</artifactId>
    <version>2.2.4</version>
</dependency>

并将此类添加到您的项目中

import java.lang.reflect.Type;
import java.util.*;
import com.google.gson.*;
import com.google.gson.reflect.TypeToken;

public class JsonHelper {
    private static final Gson gson = new GsonBuilder().disableHtmlEscaping().create();
    private static final Type TT_mapStringString = new TypeToken<Map<String,String>>(){}.getType();

    public static Map<String, String> jsonToMapStringString(String json) {
        Map<String, String> ret = new HashMap<String, String>();
        if (json == null || json.isEmpty())
            return ret;
         return gson.fromJson(json, TT_mapStringString);
    }
    public static String mapStringStringToJson(Map<String, String> map) {
        if (map == null)
            map = new HashMap<String, String>();
         return gson.toJson(map);
    }
}

我想你可以弄清楚如何使用它

转载注明原文:在Java中将HashMap写入JSON - 代码日志