Извлеките Json данных из URL и вставьте их в mongoDB, используя java - PullRequest
0 голосов
/ 26 марта 2020

У меня есть файл Json, содержащий URL-адреса, в которых также есть данные Json. Я хочу импортировать все данные в mongoDB, используя java. Я попробовал это с помощью следующего кода, но в базе данных я получаю фактические URL-адреса в виде строк, а не данные внутри них.

Данные в моем файле имеют вид:
{"actor": "http://www.wikidata.org/entity/Q303 "," id ":" nm0000062 "}
{" actor ":" http://www.wikidata.org/entity/Q392 "," id ":" nm0001168 "}

    String MongoURL = "None";
    String MongoDB = "wikidata";

    MongoClient client = getClient(MongoURL);
    MongoDatabase database = client.getDatabase(MongoDB);
    MongoCollection collection = database.getCollection("Stuff");
    int count = 0;
    int batch = 100;

    List<InsertOneModel<Document>> docs = new ArrayList<>();

    try (BufferedReader br = new BufferedReader(new FileReader("docs.json"))) {
        String line;
        while ((line = br.readLine()) != null) {
            docs.add(new InsertOneModel<>(Document.parse(line)));
            count++;
            if (count == batch) {
                collection.bulkWrite(docs, new BulkWriteOptions().ordered(false));
                docs.clear();
                count = 0;
            }
        }
    } catch (FileNotFoundException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }

    if (count > 0) {
        collection.bulkWrite(docs, new BulkWriteOptions().ordered(false));
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...