MongDD的语法很多,我们只需要记一些常用的即可,在实际开发中还是使用Java面向对象的方式来操作Mongodb。
1.小试牛刀 1.1.导入依赖在 Java 程序中如果要使用 MongoDB,你需要确保已经安装了 Java 环境及 MongoDB JDBC 驱动,创建一个普通java项目,导入如下依赖
不使用账号连接:mongodb://localhost:27017 , 使用账号连接 mongodb://账号:密码@localhost:27017/
//1.创建客户端 : mongodb://用户名:密码@127.0.0.1:27017 //如果没有账号:mongodb://127.0.0.1:27017com.mongodb.client.MongoClient mongoClient = MongoClients.create("mongodb://testuser:testuser@127.0.0.1:27017");
1.3.查询文档通过客户端链接数据库,然后查询文档
//2.链接数据库tempdbMongoDatabase userDB = mongoClient.getDatabase("tempdb");//3.获取集合 userFindIterable
通过listDatabases查询所有数据库
//列出所有数据库ListDatabasesIterable
通过 getDatabase 获取指定数据库
MongoDatabase empdb = mongoClient.getDatabase("empdb");System.out.println(empdb.getName());
drop删除数据库
MongoDatabase empdb = mongoClient.getDatabase("empdb");empdb.drop();
创建数据库 ,直接使用 mongoClient.getDatabase(“db”) ,当添加数据的时候会自动创建数据库
MongoDatabase testdb = mongoClient.getDatabase("testdb");testdb.createCollection("user");
2.2.集合CRUD查看集合
MongoCursor
获取某个集合
MongoCollection
添加集合
userDB.createCollection("user");//集合名,固定大小 , 最大文档数 ,最大字节数userDB.createCollection("user", new CreateCollectionOptions().capped(true).maxdocuments(1000).sizeInBytes(1024*1024*1024));//========================================================================================================//验证规则,添加的文档中必须出现username和 age字段ValidationOptions validationOptions = new ValidationOptions().validator(Filters.or(Filters.exists("username"),Filters.exists("age")));userDB.createCollection("user", //集合名,固定大小 , 最大文档数 ,最大字节数 new CreateCollectionOptions().capped(true).maxdocuments(1000).sizeInBytes(1024*1024*1024) //添加的文档必须满足的验证规则 .validationOptions(validationOptions) );
删除集合
//拿到集合 MongoCollection
创建文档
//创建集合userDB.createCollection("tempcol");//拿到集合MongoCollection
获取文档
//构建查询的内容document bson = new document();bson.put("_id",1);//拿到集合,执行findFindIterable
删除文档
//构建条件文档Bson filter = Filters.eq("_id", 1);//执行文档删除DeleteResult result = userDB.getCollection("tempcol").deleteOne(bson);System.out.println(result);//删除符合条件的第一个文档userDB.getCollection("tempcol").deleteOne(Filters.eq("likes", 200)); //删除符合条件的所有文档userDB.getCollection("tempcol").deleteMany (Filters.eq("likes", 200));
修改文档
//过滤条件,_id = 1Bson filter = Filters.eq("_id", 1);//把 age 设置为 100document update = new document("$set",new document("age",100));//执行修改UpdateResult updateResult = userDB.getCollection("tempcol").updateOne(filter, update);System.out.println(updateResult);
文章结束,希望对你有所帮助,喜欢的话请给个好评