简体   繁体   English

MongoDb 数据库连接使用 java 和 3.0.0 版本的身份验证

[英]MongoDb database connection using java and authentication with 3.0.0 version

I have MongoConnectionUtils this file I have dependecy below mongo-java-driver我有 MongoConnectionUtils 这个文件我在 mongo-java-driver 下面有依赖

<dependency>
        <groupId>org.mongodb</groupId>
        <artifactId>mongo-java-driver</artifactId>
        <version>3.0.0</version>
    </dependency>


  public class MongoConnectionUtils {
                private static MongoDatabase db;
        public synchronized static MongoDatabase getConnection() {

            if (db != null) {
                return db;
            }
              try {
                String dbPath = Config.sharedInstance().value("db.path");
                String dbUsername =  Config.sharedInstance().value("db.username");
                String dbPassword =  Config.sharedInstance().value("db.password");

                int dbPort = Integer.parseInt( Config.sharedInstance().value("db.port"));
                String dbName =  Config.sharedInstance().value("db.name");
                MongoClient mongoClient = new MongoClient(dbPath, dbPort);
                    db=mongoClient.getDatabase(dbName);

            } catch (Throwable e) {

            }

            return db;
        }
    }

previously i was using 2.10 jar but now using the latest version i found that db.getDB() is a deprecated method and i found getDatabase() method instead.以前我使用的是 2.10 jar 但现在使用最新版本我发现 db.getDB() 是一个不推荐使用的方法,而我找到了 getDatabase() 方法。 So now i want to authenticate the DB with username and password.所以现在我想用用户名和密码对数据库进行身份验证。 but i didn't find out db.auth() method.但我没有找到 db.auth() 方法。 Please help.请帮忙。

You can create MongoClientURI with mongodb connection string with authentication information and pass this MongoClientURI to MongoClient constructer.您可以使用带有身份验证信息的 mongodb 连接字符串创建 MongoClientURI,并将此 MongoClientURI 传递给 MongoClient 构造函数。

MongoClientURI uri = new MongoClientURI("mongodb://userId:password@hostName:port/dbName");
MongoClient mongoClient = new MongoClient(uri);
MongoDatabase db = mongoClient.getDatabase("yourdatabasename");
MongoCollection<Document> collection = db.getCollection("yourcollection");

Refer MongoDB java driver API for more information:有关更多信息,请参阅 MongoDB java 驱动程序 API:

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 使用Java的3.0.0驱动程序连接到MongoDB 2.6.3(Eclipse) - Connection to MongoDB 2.6.3 using 3.0.0 driver from Java (eclipse) Windows上使用JDK1.6.45的MongoDB 3.0.0 / 2/3 Java驱动程序Kerberos身份验证 - MongoDB 3.0.0/2/3 Java Driver Kerberos Authentication on Windows using JDK1.6.45 (MongoDB Java驱动程序(3.0.0-rc0))UnknownHostException&Authentication - (MongoDB Java Driver (3.0.0-rc0)) UnknownHostException & Authentication 使用 Java 连接到 MongoDB 服务器实例期间的身份验证 - Authentication during connection to MongoDB server instance using Java 使用JSON的Java servlet-连接数据库和登录身份验证 - Java servlet using JSON - Connection to database and login authentication 使用 Java 连接池的 AWS IAM 数据库身份验证 - AWS IAM Database Authentication using Java connection pool MongoDB Java驱动程序身份验证-版本不匹配问题? - MongoDB Java driver Authentication - Version mismatch issue? 如何使用 4.4 版中的 MongoDB Java 驱动程序连接到使用 SSL 和密码验证的副本集? - How do you use the MongoDB Java Driver in version 4.4 to connect to a replica set using SSL and password authentication? 使用Tomcat的MongoDB Java驱动程序数据库连接池 - MongoDB Java Driver database connection pooling with Tomcat 如何使用Java mongodb驱动程序,java配置(而非xml配置)在MongoLab上配置与mongo数据库的连接? - How to config connection to mongo database on MongoLab using java mongodb driver, java configuration (not xml configuration)?
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM