Я пытаюсь запросить Mongocollection из программы Java.Соединение LDAP.Все выглядит хорошо, пока я не создаю объект MongoCursor.Но в строке, где создается объект MongoCursor, я получаю исключение сокета следующим образом:
ИНФОРМАЦИЯ: Закрытое соединение [connectionId {localValue: 2}] к "Host: Port", потому что был сокетисключение, вызванное этим соединением.
Проверка подлинности исключения сообщений MongoCredential {механизм = PLAIN, имя пользователя = 'uname', источник = 'имя_базы', пароль = скрытый, механизмПроцессы = {}}
Мне интересно, следую ли я правильному способу запроса коллекции, получения документов (здесь я использую критерии «создания даты»)
Вот то, что я пробовал до сих пор -
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import java.util.Properties;
import org.bson.Document;
import com.mongodb.BasicDBObject;
import com.mongodb.DBCursor;
import com.mongodb.MongoClient;
import com.mongodb.MongoCredential;
import com.mongodb.ServerAddress;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoCursor;
import com.mongodb.client.MongoDatabase;
public class MongoDBCon {
private static Properties prop;
private static FileInputStream fis;
public static void main(String[] args) throws Exception {
try {
prop = new Properties();
fis = new FileInputStream(System.getProperty("user.dir")+"\\src\\config.properties");
prop.load(fis);
String user = prop.getProperty("username");
String password = prop.getProperty("password");
String host =prop.getProperty("host");
String db = prop.getProperty("database");
String col = prop.getProperty("collection");
List<ServerAddress> seeds = new ArrayList<ServerAddress>();
seeds.add( new ServerAddress( host));
List<MongoCredential> credentials = new ArrayList<MongoCredential>();
credentials.add(
MongoCredential.createPlainCredential(user, db, password.toCharArray())
);
MongoClient mongo = new MongoClient( seeds, credentials );
MongoDatabase database = mongo.getDatabase(db);
MongoCollection<Document> collection = database.getCollection(col);
BasicDBObject query=new BasicDBObject();
query.put("createdDate","2018-10-30 03:21:05.226");
MongoCursor<Document> cursor = collection.find(query).iterator();
while (cursor.hasNext()) {
System.out.println(cursor.next().toJson());
}
}catch(Exception e) {
System.out.println("Message-" + e.getMessage());
}
}
}
Может ли кто-нибудь помочь в этом?