mongodb-driver使用

2020-05-27 09:53:11 浏览数 (1)

0 前言

全是干货的技术殿堂

mongodb-driver是mongo官方推出的java连接mongoDB的驱动包,相当于JDBC驱动。我们现在来使用mongodb-driver完成对Mongodb的操作。

1 环境准备

创建工程,并添加以下依赖:

代码语言:javascript复制
<dependency> 
	<groupId>org.mongodb</groupId> 
	<artifactId>mongodb-driver</artifactId> 
	<version>3.10.1</version> 
</dependency>

2 使用mongodb-driver

2.1 查询所有

代码语言:javascript复制
@Test 
public void test1() { 
	//创建连接 
	MongoClient client = new MongoClient("192.168.200.128");
	//打开数据库 
	MongoDatabase commentdb = client.getDatabase("commentdb"); 
	//获取集合 
	MongoCollection<Document> comment = commentdb.getCollection("comment"); 
	//查询 
	FindIterable<Document> documents = comment.find(); 
	//查询记录获取文档集合 
	for (Document document : documents) { 
		System.out.println("_id:"   document.get("_id")); 
		System.out.println("内容:"   document.get("content")); 
		System.out.println("用户ID:"   document.get("userid")); 	
		System.out.println("点赞数:"   document.get("thumbup")); }
		//关闭连接 
		client.close(); 
		}
	}	

2.2 根据_id查询

每次使用都要用到MongoCollection,进行抽取:

代码语言:javascript复制
private MongoClient client; 
private MongoCollection<Document> comment; 
@Before 
public void init() { 
	//创建连接 
	client = new MongoClient("192.168.200.128"); 
	//打开数据库 
	MongoDatabase commentdb = client.getDatabase("commentdb"); 
	//获取集合 
	comment = commentdb.getCollection("comment"); 
}

@After 
public void after() { 
	client.close(); 
}


@Test public void test2() { 
	//查询 
	FindIterable<Document> documents = comment.find(new BasicDBObject("_id", "1")); 
	//查询记录获取文档集合 
	for (Document document : documents) { 
		System.out.println("_id:"   document.get("_id")); 
		System.out.println("内容:"   document.get("content")); 
		System.out.println("用户ID:"   document.get("userid")); 
		System.out.println("点赞数:"   document.get("thumbup")); 
	} 
}

2.3 新增

代码语言:javascript复制
@Test public void test3() { 
	Map<String, Object> map = new HashMap(); 
	map.put("_id", "6"); 
	map.put("content", "很棒!"); 
	map.put("userid", "9999"); 
	map.put("thumbup", 123); 
	Document document = new Document(map); 
	comment.insertOne(document); 
}

2.4 修改

代码语言:javascript复制
@Test public void test4() { 
	//修改的条件 
	Bson filter = new BasicDBObject("_id", "6"); 
	//修改的数据 
	Bson update = new BasicDBObject("$set", new Document("userid", "8888"));
	comment.updateOne(filter, update); 
}

2.5 删除

代码语言:javascript复制
@Test public void test5() { 
	//删除的条件 
	Bson filter = new BasicDBObject("_id", "6"); 
	comment.deleteOne(filter); 
}

0 人点赞