mongodb添加集合文档操作-使用shell和java操作mongodb文档

2019-03-16 22:05|来源: 网路

查看当前数据库中所有的集合,使用命令 show collections 或使用show tables
> use mydb;
switched to db mydb
> show tables;
student

student1

@Test
public void testShowCollection(){
    ListCollectionsIterable<Document> iterable = mongoDatabase.listCollections();
    MongoCursor<Document> mongoCursor = iterable.iterator();
    while (mongoCursor.hasNext()) {
        System.out.println(mongoCursor.next());
    }
}


创建集合

1、显示创建集合, 执行后会在数据库里新建一个空的集合
> db.createCollection('blog1');

{ "ok" : 1 }

mongoDatabase.createCollection("user1");


2、隐式创建集合
隐式创建可以使用命令 db.集合名称.insert({}),指创建集合并同时向集合中插入数据,例如:db.user.insert({name:"书生"})
> db.user.insert({name:"书生"})
WriteResult({ "nInserted" : 1 })
> db.user.find();
{ "_id" : ObjectId("575cf7680eeaf1846525401c"), "name" : "书生" }


插入文档

> db.foo.insert({"bar":"baz"})
WriteResult({ "nInserted" : 1 })
> db.foo.find();
{ "_id" : ObjectId("57555bcfa57bed6079269bd0"), "bar" : "baz" }
>


插入多个文档,最多只能插入48M

> db.foo.insert([{"id":1},{id:2}])
BulkWriteResult({
   "writeErrors" : [ ],
   "writeConcernErrors" : [ ],
   "nInserted" : 2,
   "nUpserted" : 0,
   "nMatched" : 0,
   "nModified" : 0,
   "nRemoved" : 0,
   "upserted" : [ ]
})
> db.foo.find()
{ "_id" : ObjectId("57555bcfa57bed6079269bd0"), "bar" : "baz" }
{ "_id" : ObjectId("57555c42a57bed6079269bd1"), "id" : 1 }
{ "_id" : ObjectId("57555c42a57bed6079269bd2"), "id" : 2 }
>
@Test
public void testAddDocument() {
    MongoCollection<Document> mongoCollection = mongoDatabase.getCollection("student1");
    //插入一条数据
    Document document = new Document();
    document.append("name", "zhangsan");
    document.append("age", 28);
    mongoCollection.insertOne(document);
    //插入多条数据
    List<Document> documentList = new ArrayList<Document>();
    Document document1 = new Document();
    document1.append("name", "lisi");
    document1.append("age", 28);
    document1.append("sex", "男");
    Document document2 = new Document();
    document2.append("name", "wangwu");
    document2.append("age", 31);
    document2.append("sex", "男");
    documentList.add(document1);
    documentList.add(document2);
    mongoCollection.insertMany(documentList);
}


相关问答

更多

java操作MongoDB

package com.mkyong.core; import java.net.UnknownHostException; import com.mongodb.BasicDBObject; import com.mongodb.DB; import com.mongodb.DBCollection; import com.mongodb.DBCursor; import com.mongodb.Mongo; import com.mongodb.MongoException; /** * J

MongoDb c#驱动程序在一个原子操作中更新多个文档(MongoDb c# driver update multiple documents in one atomic operation)

MongoDB不支持事务或原子多文档 。 MongoDB仅对一个文档执行原子操作。 您可以在Mongodb的文档中查看 因此,如果您使用查询更新1000个文档并且在此操作期间服务器崩溃,则某些文档可能会更新,而其他文档则不会更新。 MongoDB do not support transaction or atomic multi documents. MongoDB perform atomic operation only on one document. You can check thi

何时将文档添加到MongoDB集合中(When was a document added to a MongoDB collection)

如果您使用_id属性的默认ObjectId值,则创建时间将在其中进行编码。 如ObjectID文档中所述 : ObjectId是一个12字节的BSON类型,使用以下构造: 一个4字节的值,表示自Unix纪元以来的秒数, 一个3字节的机器标识符 一个2字节的进程ID和一个3字节的计数器,以随机值开始。 您可以在ObjectId对象上调用getTimestamp()函数以获取ISODate对象创建时间的ISODate对象: 在mongo shell中: ObjectId().getTimestamp

如何用Java操作MongoDB

HelloWorld程序   学习任何程序的第一步,都是编写HelloWorld程序,我们也不例外,看下如何通过Java编写一个HelloWorld的程序。   首先,要通过Java操作Mongodb,必须先下载Mongodb的Java驱动程序,可以在这里下载。   新建立一个Java工程,将下载的驱动程序放在库文件路径下,程序代码如下: package com.mkyong.core; import java.net.UnknownHostException; import com.mongo

相关文章

更多

最近更新

更多