MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Comment se connecter à MongoDB 3.2 en Java avec nom d'utilisateur et mot de passe ?

Testé avec mongodb-3.4.2 et mongo-java-driver-3.4.2.jar

(1) Utiliser MongoCredential

MongoCredential credential = MongoCredential.createCredential("user", "database", "passwd".toCharArray());
MongoClient mongoClient = new MongoClient(new ServerAddress("localhost", 27017), Arrays.asList(credential));
MongoDatabase db = mongoClient.getDatabase( "test" );
MongoCollection collection = db.getCollection("mycol");
FindIterable fi = collection.find();
MongoCursor cursor = fi.iterator();

(2) Utiliser MongoClientURI

MongoClientURI uri = new MongoClientURI("mongodb://user:[email protected]:27017/?authSource=test");
MongoClient mongoClient = new MongoClient(uri);

Il existe des variantes pour utiliser MongoCredential et MongoClientURI pour différents mécanismes d'authentification, vérifiez ici pour plus de détails