У меня есть файл 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));
}