最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
mongodb driver怎么使用 mongodb driver使用代码解析
时间:2022-06-29 10:29:29 编辑:袖梨 来源:一聚教程网
mongodb driver如何使用?本篇文章小编给大家分享一下mongodb driver使用代码解析,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看。
MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。
MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。
mongodb-driver是mongo官方推出的java连接mongoDB的驱动包,相当于JDBC驱动。我们现在来使用mongodb-driver完成对Mongodb的操作。
1 环境准备
创建工程,并添加以下依赖:
org.mongodb mongodb-driver 3.10.1
2 使用mongodb-driver
2.1 查询所有
@Test
public void test1() {
//创建连接
MongoClient client = new MongoClient("192.168.200.128");
//打开数据库
MongoDatabase commentdb = client.getDatabase("commentdb");
//获取集合
MongoCollection comment = commentdb.getCollection("comment");
//查询
FindIterable 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,进行抽取:
private MongoClient client; private MongoCollectioncomment; @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 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 新增
@Test public void test3() {
Map 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 修改
@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 删除
@Test public void test5() {
//删除的条件
Bson filter = new BasicDBObject("_id", "6");
comment.deleteOne(filter);
}
MongoDB优势与劣势
优势:
1、在适量级的内存的MongoDB的性能是非常迅速的,它将热数据存储在物理内存中,使得热数据的读写变得十分快。
2、MongoDB的高可用和集群架构拥有十分高的扩展性。
3、在副本集中,当主库遇到问题,无法继续提供服务的时候,副本集将选举一个新的主库继续提供服务。
4、MongoDB的Bson和JSon格式的数据十分适合文档格式的存储与查询。
劣势:
1、不支持事务操作。MongoDB本身没有自带事务机制,若需要在MongoDB中实现事务机制,需通过一个额外的表,从逻辑上自行实现事务。
2、应用经验少,由于NoSQL兴起时间短,应用经验相比关系型数据库较少。
3、MongoDB占用空间过大。
相关文章
- 整理拾光全部隐藏物品获取方法攻略 12-04
- 魔理沙还书姬虫百百世彩蛋位置一览 12-04
- 阿西美女室友竟然2第六章全流程攻略 12-04
- 超英派遣中心第四章第一轮班派遣攻略 12-04
- 阿西美女室友竟然2第五章全流程攻略 12-04
- 梦之形跳跳锤维斯珀玩法攻略分享 12-04