概述
你可以使用insertOne方法来将文档插入到MongoDB集合中。如果你试图将一个文档插入到不存在的集合中,MongoDB会自动帮你创建集合。
前提
我们接着上文连接到数据库test后的操作。
首先需要导入如下包:
import org.bson.Document;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Locale;
import static java.util.Arrays.asList;
插入一个文档到集合
插入一个文档到名为restaurant的集合中。如果test数据库中不存在restaurant集合,该操作会自动创建。
创建一个文档,用 org.bson.Document类。
DateFormat format = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'",
Locale.ENGLISH);db.getCollection("restaurants").insertOne(
new Document("address", new Document()
.append("street", "2 Avenue")
.append("zipcode", "10075")
.append("building", "1480")
.append("coord", asList(-73.9557413, 40.7720266)))
.append("borough", "Manhattan")
.append("cuisine", "Italian")
.append("grades", asList( new Document()
.append("date", format.parse("2014-10-01T00:00:00Z"))
.append("grade", "A") .append("score", 11), new Document()
.append("date", format.parse("2014-01-16T00:00:00Z"))
.append("grade", "B") .append("score", 17))) .append("name", "Vella")
.append("restaurant_id", "41704620"));
该方法不会返回结果。
如果插入的文档不包括_id属性,则驱动包会自动生成一个ObjectId加到文档中作为主键。
其他
更多关于MongoDB for Java的操作,请看org.bson.Document文档。
在MongoDB指南中,可以去查看更多关于插入数据的操作。Insert Document
或者可以直接看The MongoDB Manual