Как запустить запрос MongoDB в Java

#java #mongodb

#java #mongodb

Вопрос:

У меня есть запросы, скопированные из руководства по MongoDB, но они не распознаются в IntelliJ. Это потому, что драйвер версии 1.8.2? Я не могу понять, как обновить это до более новой версии.

Я взял пример запроса, показанный ниже, из https://mongodb.github.io/mongo-java-driver/4.1/driver/getting-started/quick-start /

Однако intellij сообщает мне, что он не может разрешить метод eq.

 myDoc = collection.find(eq("i", 71)).first();
System.out.println(myDoc.toJson());
  

Или этот запрос. IntilliJ скажет мне, что двоеточие является неожиданным токеном

 db.inventory.find( { status: { $in: [ "A", "D" ] } } )
  

введите описание изображения здесь

Ответ №1:

Я подозреваю, что вам не хватает статического импорта.

 import static com.mongodb.client.model.Filters.eq;
  

Попробуйте добавить это. Он не выдаст ошибку компиляции. Пожалуйста, проверьте инструкцию import на соответствие версии драйвера Java.

Ответ №2:

Однако intellij сообщает мне, что он не может разрешить метод eq.

Вы добавили зависимость MongoDB в Maven?

 <dependencies>
<dependency>
    <groupId>org.mongodb</groupId>
    <artifactId>mongodb-driver-sync</artifactId>
    <version>4.1.1</version>
</dependency>
  

Комментарии:

1. Я сделал это, и я все еще получаю ошибки, из-за которых символы не могут быть разрешены.

2. Вы его импортировали?