Как за кадром приложение весенней загрузки соединяется с mongodb и его Document - PullRequest
0 голосов
/ 19 июня 2019

Когда я подключаюсь к экземпляру Docker с помощью mongodb, он успешно подключается, но не может извлечь данные из определенного документа.Когда я сохраняю данные клиента, они сохраняются, но где они хранятся, неизвестно.Все операции, такие как findAll findByFirstName findByLastName дают ноль

Я следовал https://spring.io/guides/gs/accessing-data-mongodb/, но я не мог за кадром понять, как он соединяется с mongodb и его конфигурацией

Нет сообщений об ошибках,код компилируется и успешно выполняется

Ответы [ 2 ]

0 голосов
/ 20 июня 2019

У меня есть другая часть моего вопроса: как изменить настройки БД по умолчанию, указывающие на «тест».Следующие аннотации, которые используются для конфигурации mongo: @Configuration @ConfigurationProperties (ignoreUnknownFields = false, prefix = "spring.data.mongodb")

и, что важно, абстрактный класс AbstractMongoConfiguration, который содержит абстрактные методы для настройки параметров mongodb

package usecase;

import com.mongodb.MongoClient;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.mongodb.config.AbstractMongoConfiguration;

@Configuration
@ConfigurationProperties(ignoreUnknownFields = false, prefix = "spring.data.mongodb")
public class ApplicationConfig extends AbstractMongoConfiguration {

    @Override
    protected String getDatabaseName() {
        return "mydb";
    }

    @Override
    public MongoClient mongoClient() {
        return new MongoClient("127.0.0.1", 27017);
    }
}
0 голосов
/ 20 июня 2019

Я нашел решение одной части -> Поскольку я не использовал один и тот же пакет для MongoRepository, он не выбирал нужный документ. Итак, здесь вы узнаете, что если вы используете другой пакет, отличный от вашего класса @SpringBootApplication Entry, тогда вам нужно использовать @EnableMongoRepositories, который сообщает Spring, что, если он не найдет репозитории, просканируйте и другие пакеты.

Я все еще изучаю, как изменить базу данных по умолчанию с "test" (по умолчанию) на ту, которую я использую в моем экземпляре mongodb

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