【发布时间】:2021-12-11 10:59:59
【问题描述】:
我正在用 JAVA-MongoDB 编写一个基本的 CREATE 和 READ 操作。我正在尝试将用户输入的记录插入数据库并读取相同的内容。
这就是我当前代码的样子-
Create.java-
import com.mongodb.Block;
import com.mongodb.ConnectionString;
import com.mongodb.MongoClientSettings;
import com.mongodb.client.*;
import com.mongodb.client.model.InsertManyOptions;
import org.bson.Document;
import javax.print.Doc;
import java.sql.SQLOutput;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class Create {
private static Scanner scanner = new Scanner(System.in);
private static String inputValue;
public static void main(String args[]) {
ConnectionString connectionString = new ConnectionString("mongodb+srv://USER:PASSWD@CLUSTER.mongodb.net/mydb?retryWrites=true&w=majority");
MongoClientSettings settings = MongoClientSettings.builder()
.applyConnectionString(connectionString)
.build();
MongoClient mongoClient = MongoClients.create(settings);
MongoDatabase database = mongoClient.getDatabase("test");
System.out.println("Enter any string:");
inputValue = scanner.nextLine();
//Creating a collection
database.createCollection("students");
//Preparing a document
Document document = new Document("name", inputValue);
//Inserting the created documents
List<Document> list = new ArrayList<Document>();
for(Document d: list) {
list.add(d);
}
database.getCollection("students").insertMany(list, new InsertManyOptions().ordered(false));
System.out.println("Document inserted successfully");
mongoClient.close();
}
}
Read.java
import com.mongodb.Block;
import com.mongodb.ConnectionString;
import com.mongodb.MongoClientSettings;
import com.mongodb.client.*;
import org.bson.Document;
import java.sql.SQLOutput;
import java.util.Iterator;
import java.util.Scanner;
public class Read {
private static Scanner scanner = new Scanner(System.in);
private static String inputValue;
public static void main(String args[]) {
ConnectionString connectionString = new ConnectionString("mongodb+srv://USER:PASSWD@CLUSTER.mongodb.net/mydb?retryWrites=true&w=majority");
MongoClientSettings settings = MongoClientSettings.builder()
.applyConnectionString(connectionString)
.build();
MongoClient mongoClient = MongoClients.create(settings);
MongoDatabase database = mongoClient.getDatabase("test");
// Read Data from MongoDB
//Creating a collection object
MongoCollection<Document> collection = database.getCollection("students");
//Retrieving the documents
FindIterable<Document> iterDoc = collection.find();
Iterator it = iterDoc.iterator();
while (it.hasNext()) {
System.out.println(it.next());
}
mongoClient.close();
// findIterable.forEach(printBlock);
}
}
【问题讨论】: