java json 用 Ja​​ckson 解析数组

java json array parsing with Jackson

我有以下 json 文件

[{"key1":"value11", "key2":"value12"},{"key1":"value21", "key2":"value22"},...]

如何使用 Jackson 从该数组中获取每个 json 对象。这里需要注意的是 json 文件很大~ 700MB。我想一个一个地读取JSON对象并将数据加载到数据库

 step 1: {"key1":"value11", "key2":"value12"}
 step 2: {"key1":"value21", "key2":"value22"}
 ...

所以我需要将所有这些信息加载到数据库中。假设我在数据库中有一个 table:

create table mytbl
(
  key1 varchar2(100),
  key2 varchar2(100)
)

所以每个键都应该进入他的列。

我想分享一下我是如何得到的,也许有人会用...

ObjectMapper mapper = new ObjectMapper();
JsonParser parser = mapper.getJsonFactory().createJsonParser(new File(ConfigurationManager.jsonfile));

JsonToken token = parser.nextToken();

if (token == null) {
    System.out.println("no json file");
}

if (!JsonToken.START_ARRAY.equals(token)) {
    System.out.println("Expected an array");
}   

while (!JsonToken.END_ARRAY.equals(parser.nextToken())) {   
    System.out.println(parser.readValueAsTree().toString()));

    // parse json object here
}       

parser.close();