Как обновить mongodb напрямую и отправить данные на передний план - PullRequest
0 голосов
/ 15 апреля 2019

Я хочу знать, есть ли способ обновить документ mongodb непосредственно во внутреннем интерфейсе и отправить обновленные данные во внешний интерфейс, как, например, как мы обновляли файл дампа MySQL и отправляли данные во внешний интерфейс.

1 Ответ

0 голосов
/ 15 апреля 2019

Вы можете использовать метод findAndUpdate, используя mongoTemplate , чтобы обновить записи и вернуть их в spring-data-mongodb , подробности смотрите в официальной документации 10.5.6. Поиск и сохранение документов в коллекции . Для быстрого решения взгляните на код ниже:

// find and update and then return
Query query = new Query();
query.addCriteria(Criteria.where("firstName").is("First Name"));

Update update = new Update();
update.set("lastName", "modified last name");

FindAndModifyOptions options = new FindAndModifyOptions();
options.upsert(true);
options.returnNew(true);

try {
    Customer modifiedCustomer = mongoOperation
        .findAndModify(query, update, options, Customer.class);
    // Modified data
    System.out.println("Modified Custom data\n");
    System.out.println(modifiedCustomer);
    // Return from here;
} catch (Exception e) {
    System.out.println(e.getMessage());
    throw e;
}

Я зафиксировал этот код в моем репозитории github, вы можете посмотреть его: https://github.com/krishnaiitd/learningJava/blob/master/spring-boot-sample-data-mongodb/src/main/java/sample/data/mongo/main/Application.java

...