Как импортировать файлы данных JSON в mongodb с помощью Spring Boot? - PullRequest
0 голосов
/ 16 февраля 2019

Как вы знаете, при использовании jpa-модуля с пружинной загрузкой приведенные ниже коды в application.properties импортируют предварительно определенные данные sql в rdb.

spring.datasource.initialization-mode = always
spring.datasource.data = classpath:/sql/spring-boot-mysql.sql

Но при использовании mongodb в качестве хранилища какие свойства кодируются в application.properties файл может импортировать предварительно определенные данные JSON из внешних файлов?Если такие свойства не закрываются, как можно импортировать данные JSON из внешних файлов при весенней загрузке?

Ответы [ 2 ]

0 голосов
/ 18 февраля 2019

Я не знаю, есть ли решение, использующее application.properties, но вот мое решение для импорта документов из файла, содержащего один документ на строку.

public static void importDocumentsFromJsonFile(File file) {
        //Read each line of the json file. Each file is one observation document.
        List<Document> observationDocuments = new ArrayList<>();
        try (BufferedReader br = new BufferedReader(new FileReader(file.getPath()));) {
            String line;
            while ((line = br.readLine()) != null) {
                observationDocuments.add(Document.parse(line));
            }
        } catch (IOException ex) {
            ex.getMessage();
        }
        mongoTemplate.getCollection("yourCollection").insertMany(observationDocuments);
    }
0 голосов
/ 16 февраля 2019

Вы можете взглянуть на следующий класс Test, предоставляемый "flapdoodle".Тест показывает, как импортировать файл JSON, содержащий набор данных коллекции: MongoImportExecutableTest.java

Теоретически вы также можете импортировать весь дамп базы данных.(с использованием восстановления MongoDB): MongoRestoreExecutableTest.java

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...