MongoDB学习日记 - java代码(三):数据库与集合操作

来源:互联网 发布:淘宝购物拒签会怎样 编辑:程序博客网 时间:2024/06/05 00:14

这里的示例代码都是简要代码,详细代码可以参考我打包好的代码,地址:百度云 mongo-demo.rar

数据库

  • 创建数据库
MongoClient client = new MongoClient();MongoDatabase database = client.getDatabase("mydb");

使用 getDatabase( ) 方法会创建没有的数据库,而存在则直接连接,这和前面讲的数据库层面的 use mydb 是一样的概念。

  • 列表所有数据库
MongoClient client = new MongoClient();MongoIterable<String> list = client.listDatabaseNames();for (String string : list) {    System.out.println(string);}

另外还有一个已经不建议使用的方法:

List<String> databaseNames = client.getDatabaseNames();
  • 删除数据库
client.dropDatabase("mydb");client.getDatabase("mydb").drop();

(其他方法可以自己看看源码,运行试试看,这里就不多说了)


集合

  • 创建集合
MongoClient client = new MongoClient();MongoDatabase database = client.getDatabase("mydb");database.createCollection("test");

这是创建默认设置的集合,还可以按自己的需要创建集合:

database.createCollection(collectionName, createCollectionOptions)

其中 CreateCollectionOptions 是一个 MongoDB 的内置对象。包含下列属性:

  • boolean autoIndex = true : 自动索引
  • long maxDocuments : 集合中允许的最大数量的文件上限
  • boolean capped : 设置集合是否为上限
  • long sizeInBytes : 集合上限的最大大小
  • Boolean usePowerOf2Sizes :usePowerOf2Sizes 分配策略
  • Bson storageEngineOptions : 设置此索引的存储引擎选项文档

  • 列表所有集合

MongoClient client = new MongoClient();MongoDatabase database = client.getDatabase("mydb");MongoIterable<String> list = database.listCollectionNames();for (String string : list) {    System.out.println(string);}
  • 删除集合
MongoClient client = new MongoClient();MongoDatabase database = client.getDatabase("mydb");MongoCollection<Document> collection = database.getCollection("test");collection.drop();
  • 集合重命名
MongoNamespace namespace = collection.getNamespace();MongoNamespace newNamespace = new MongoNamespace(namespace.getDatabaseName(),"test");collection.renameCollection(newNamespace );
0 0
原创粉丝点击