Как Spring подключается к MongoDB? - PullRequest
0 голосов
/ 18 июня 2020

В настоящее время я смотрю на Java Spring и хочу отметить, что в отношении веб-сервисов я скорее использовал JavaScript (NodeJS) или Python Django в прошлом.

Если честно, я нахожу Spring немного сложным или абстрактным по сравнению с NodeJS с Express. В NodeJS я могу подключиться к базе данных MongoDB в пределах 1 строки кода mongoose.connect(....), и все, меня ничего не раздражает или неясно. Весной я попытался выяснить, как подключиться к базе данных MongoDB, и нашел 5 различных подходов с использованием 20 разных классов и до сих пор не понял, что на самом деле происходит за кулисами.

Я сделал их официальное небольшое руководство по быстрому запуску, в котором используется класс, реализующий интерфейс MongoRepository, и после этого, когда я запускаю приложение, в журналах Tomcat Server говорится, что приложение «магически» подключено в базу данных MongoDB. Поэтому мне даже не нужно было предоставлять какие-либо детали подключения, такие как URI, что мне всегда приходилось делать, когда я использовал NodeJS. Таким образом, процессу явно не хватает кода connect().

Итак, мой вопрос: может ли кто-нибудь прояснить, что именно происходит за кулисами, и, возможно, почему он так отличается от NodeJS?

Спасибо

1 Ответ

1 голос
/ 18 июня 2020

Создайте класс POJO. В @Document напишите имя своей коллекции, а не имя базы данных. В MongoDB вы можете легко создать создание имени коллекции

Для создания базы данных use <your-database-name>

Чтобы создать имя коллекции db.createCollection("Book")

@Document(collection = "Book")
public class Customer {

@Id
public Integer id;
public String firstName;
public String lastName;
 cons, getter and setter
}

Теперь в вашем application.properties файле, который находится в каталоге resources вашего проекта

spring.data.mongodb.port=27017
spring.data.mongodb.host=localhost
spring.data.mongodb.database=<your Database name>

и, наконец, вы должны иметь чтобы добавить зависимость в ваш pom. xml файл

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-data-mongodb</artifactId>
    </dependency>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...