使用 Jackson 库从 JSON 文件创建 JAVA 地图

create JAVA Map out of JSON file using Jackson libraries

我正在使用 CouchbaseLite 构建 NoSQL 类型的嵌入式数据库。下载 1.3 版本 couchbase-lite-java-1.3.1-community.zip 的库并将它们添加到我在 eclipse 中的 Java 项目。

以下是我想要完成的任务?

  1. 读取.json文件(假设文件路径J:/temp/sample.json
  2. 将其转换为地图
  3. 插入 CouchBase 数据库。

以下是我试过的代码:

    CouchDBManager dbManager = new CouchDBManager();
    Database myDB = dbManager.createDataBase("atempt1");
    // first step
    File f = new File("J:/temp/sample.json");
    // code to read the content of a file
    // second step
    ObjectNode objectNode1 = mapper.createObjectNode();
    // add code to covert the json content read from the file to Map
    // third step
    Document doc = myDB.createDocument();
    doc.putProperties(map); // putProperties expectes Map object

所以,请帮助我阅读 json 文件并使用 Jackson 库将其转换为 Map,以便我可以创建文档并将其插入 CouchbaseLite DB。

注意: Jackson 库是我下载的 CouchBaseLite 的一部分,所以我想要一个解决方案。我 don't want to use custom processing 的 JSON 文件并将其转换为 Map,这是容易出错和性能问题。

请查看下面的 Jackson 数据绑定 css link:

map = mapper.readValue(new File("J:/temp/sample.json"), HashMap.class);

returns一张地图。

参考:

  1. http://fasterxml.github.io/jackson-databind/javadoc/2.5/com/fasterxml/jackson/databind/ObjectMapper.html#readValue(java.io.File,%20com.fasterxml.jackson.databind.JavaType)