public class test3 {
//连接数据库(不需要验证,用于测试连接本地的mongodb)
public static MongoDatabase getDatabase(String DbName){
MongoClient mongoClient = new MongoClient("localhost",27017);
MongoDatabase mongoDatabase = mongoClient.getDatabase(DbName);
return mongoDatabase;
}
//连接数据库(需要密码验证,没写)
public static MongoDatabase getDatabase(String DbName,String UserName,String PassWord){
return null;
} public static void insertDemo(){
MongoCollection col = getDatabase("mydb1").getCollection("test");
//准备数据,将数据插入存入文档中
Document doc1 = new Document();
doc1.append("name","yj");
doc1.append("age","12");
//将文档插入到mongodb中
col.insertOne(doc1);
//插入多个数据
List<Document> DocList = new ArrayList<>();
for(int i =0 ; i<10 ; i++){
Document document = new Document();
document.append("name","yj");
document.append("age",i);
DocList.add(document);
}
col.insertMany(DocList);
} public static void deleteDemo(){
MongoCollection col = getDatabase("mydb1").getCollection("test");
//删除条件
Bson filter = Filters.eq("name","yj9");
//删除单个文档
// col.deleteOne(filter);
//删除满足条件的所有文档
col.deleteMany(filter);
} public static void updateDemo(){
MongoCollection col = getDatabase("mydb1").getCollection("test");
Bson filter = Filters.eq("name","yj1");
//$set修改器
Document document = new Document("$set",new Document("name","yyyyy"));
// col.updateOne(filter,document);
col.updateMany(filter,document);
} public static void selectDemo(){
MongoCollection col = getDatabase("mydb1").getCollection("test");
FindIterable findIterable = col.find();
MongoCursor cursor = findIterable.iterator();
while(cursor.hasNext()){
Document document = (Document) cursor.next();
System.out.println(document.getString("name")+ " is "+document.get("age"));
}
} public static void selectDemo2(){
/**
* 1.多个条件查询
* 2.根据ObjectId()大小查询
*/
BasicDBObject obj = new BasicDBObject();
//第一个用put,后面的都有append,防止被覆盖
obj.put("name","yj");
//$gt 大于 ; $lte 小于
obj.append("_id",new BasicDBObject("$gt",new ObjectId("5c9c8a0f232b2e0de002a02d")));
MongoCollection col = getDatabase("mydb1").getCollection("test");
FindIterable findIterable = col.find(obj).limit(5);
MongoCursor<Document> mongoCursor = findIterable.iterator();
while(mongoCursor.hasNext()){
Document document = mongoCursor.next();
System.out.println(document.getString("name")+ " is "+document.get("age"));
}
}
public static void main(String[] args){ } }

JAVA对mongodb的基本操作的更多相关文章

  1. java对mongoDB的基本操作 ,游标使用

    package com.mongodb.text; import java.net.UnknownHostException; import java.util.List; import org.bs ...

  2. 【MongoDB for Java】Java操作MongoDB

    上一篇文章: http://www.cnblogs.com/hoojo/archive/2011/06/01/2066426.html介绍到了在MongoDB的控制台完成MongoDB的数据操作,通过 ...

  3. JAVA操作MongoDB数据库

    1. 首先,下载MongoDB对Java支持的驱动包 驱动包下载地址:https://github.com/mongodb/mongo-java-driver/downloads 2.Java操作Mo ...

  4. mongodb的基本操作与插入文档(document)

    一.mongodb的基本操作: 1.查看mongodb当前所有的databases : show dbs 2.选择数据库(database) : use databaseName(该数据库不存在则会自 ...

  5. [转]MongoDB for Java】Java操作MongoDB

    原文地址: MongoDB for Java]Java操作MongoDB 开发环境: System:Windows IDE:eclipse.MyEclipse 8 Database:mongoDB 开 ...

  6. servlet中Java连接数据库后的基本操作

    servlet中Java连接数据库后的基本操作 在eclipse中新建一个工程:login 在Server中新建一个服务器,基本的操作不用说了,在前两天的笔记中可以找到; 需要知道数据库的用户名和密码 ...

  7. Java 连接MongoDB

    1.驱动 通过java连接MongoDB需要一个java版的驱动 下载地址:http://mongodb.github.io/mongo-java-driver/ 2.连接MongoDB 通过 com ...

  8. Java操作MongoDB

    上一篇文章: http://www.cnblogs.com/hoojo/archive/2011/06/01/2066426.html 介绍到了在MongoDB的控制台完成MongoDB的数据操作,通 ...

  9. mongDB基本命令和Java操作MongoDB

    上一篇博文<mongoDB安装>我们安装了mongoDB,现在来复习一下它的一些基本命令:mongoDB的bin目录加入到path之后,命令行中输入mongo: 然后我们进入正题 1.查看 ...

随机推荐

  1. 跟我一步一步写出MongoDB Web 可视化工具(一)

    前言 距离上一次写博客,已经不记得大概有多长时间了, 是时候继续前行了... MongoStudio 是一个Web的 MongoDB可视化操作工具, 一年半前已经写好, 但是总觉得不足, 现从头开始. ...

  2. 【分享】谈CSS3中display属性的flex布局

    最近在学习微信小程序(重新学习微信小程序),在设计首页布局的时候,新认识了一种布局方式display:flex .guide-top{ height: 36%; display: flex; /*fl ...

  3. 李航《统计学习方法》CH02

    CH02 感知机 前言 章节目录 感知机模型 感知机学习策略 数据集的线性可分性 感知机学习策略 感知机学习算法 感知机学习算法 感知机学习算法的原始形式 算法的收敛性 感知机学习算法的对偶形式 导读 ...

  4. docker搭建elk

    docker run -d -p 5601:5601 -p 9200:9200  -p 5044:5044 -v /opt/data/elk-data:/var/lib/elasticsearch - ...

  5. css选择器权重问题

    important infinity 行间样式 1000(256进制) id 100 class/属性/伪类 10 标签/伪元素 1 通配符 0

  6. 微信中打开链接,自动打开外部浏览器打开指定URL页面

    上半年公司有一个新的APP项目上线,我们在项目首页做个二维码,然后用户用手机扫一扫就能下载了.但是很多用户反映扫一扫之后下载不了,了解之后才知道这些用户都是使用的微信的扫一扫,而我们开发测试人员一般使 ...

  7. JS 跳出多重循环

    今天学到了如何跳出多重循环

  8. 生成不同尺寸dimen的xml文件以及文件夹

    import java.io.File; import java.io.FileNotFoundException; import java.io.FileOutputStream; import j ...

  9. 关于Servlet的一些归纳(2)

    1.web项目结构 根路径: 文件夹 文件 WEB-INF: lib(存放一些jar文件) classes(存放class文件) web.xml 2.GenericServlet类 实现了Servle ...

  10. ESP32搭建2.虚拟机与物理机实现文件传输

    为后期操作方便,搭建实现虚拟机和物理机的文件直传. 1.     将安装好的虚拟机打开,点击VMware的虚拟机标签中的更新VMware Tools,等待一小会,虚拟CD盘中弹出文件 2.将压缩包Co ...