Java连接示例

本文主要介绍Java连接示例。

    

    •   官方资料可参考Quick Start

    •   Jar包可单击下载

操作步骤

1.  获取 DDS 实例的连接信息。

2.  Java连接实例:Maven配置。

<dependencies>

    <dependency>

        <groupId>org.mongodb</groupId>

        <artifactId>mongo-java-driver</artifactId>

        <version>3.0.4</version>

    </dependency>

</dependencies>

Java Code。

import java.util.ArrayList;

import java.util.List;

import java.util.UUID;

import org.bson.BsonDocument;

import org.bson.BsonString;

import org.bson.Document;

import com.mongodb.MongoClient;

import com.mongodb.MongoClientOptions;

import com.mongodb.MongoClientURI;

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 Main {

        public static ServerAddress seed1 = new ServerAddress("demotest.mongodb.db.cloud.papub",

                        15923);

        public static String username = "demouser";

        public static String password = "123456";

        public static String ReplSetName = "demotest";

        public static String DEFAULT_DB = "test";

        public static String DEMO_DB = "test";

        public static String DEMO_COLL = "testColl";

        public static MongoClient createMongoDBClient() {

                // 构建Seed列表

                List<ServerAddress> seedList = new ArrayList<ServerAddress>();

                seedList.add(seed1);

                // 构建鉴权信息

                List<MongoCredential> credentials = new ArrayList<MongoCredential>();

                credentials.add(MongoCredential.createScramSha1Credential(username, DEFAULT_DB,

                                password.toCharArray()));

                // 构建操作选项,requiredReplicaSetName属性外的选项根据实际需求配置,默认参数满足大多数场景

                MongoClientOptions options = MongoClientOptions.builder().requiredReplicaSetName(ReplSetName)

                                .socketTimeout(2000).connectionsPerHost(1).build();

                return new MongoClient(seedList, credentials, options);

        }

         public static MongoClient createMongoDBClientWithURI() {

                // 另一种通过URI初始化

                //mongodb://[username:password@]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[database][?options]]

                MongoClientURI connectionString = new MongoClientURI("mongodb://" + username + ":" + password + "@"

                                + seed1 +  "/" + DEFAULT_DB + "?replicaSet=" + ReplSetName);

                return new MongoClient(connectionString);

        }

         public static void main(String args[]) {

                MongoClient client = createMongoDBClient();

                // or

                // MongoClient client = createMongoDBClientWithURI();

                try {

                        // 取得Collecton句柄

                        MongoDatabase database = client.getDatabase(DEMO_DB);

                        MongoCollection<Document> collection = database.getCollection(DEMO_COLL);

                        // 插入数据

                        Document doc = new Document();

                        String demoname = "JAVA:" + UUID.randomUUID();

                        doc.append("DEMO", demoname);

                        doc.append("MESG", "Hello AliCoudDB For MongoDB");

                        collection.insertOne(doc);

                        System.out.println("insert document: " + doc);

                        // 读取数据

                        BsonDocument filter = new BsonDocument();

                        filter.append("DEMO", new BsonString(demoname));

                        MongoCursor<Document> cursor = collection.find(filter).iterator();

                        while (cursor.hasNext()) {

                                System.out.println("find document: " + cursor.next());

                        }

                } finally {

                        // 关闭Client,释放资源

                        client.close();

                }

                return;

        }

}

 

以上内容是否解决了您的问题?
请补全提交信息!
联系我们

电话咨询

400-151-8800

邮件咨询

fincloud@ocft.com

在线客服

工单支持

解决云产品相关技术问题