JAVA对mongodb的基本操作
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的基本操作的更多相关文章
- java对mongoDB的基本操作 ,游标使用
package com.mongodb.text; import java.net.UnknownHostException; import java.util.List; import org.bs ...
- 【MongoDB for Java】Java操作MongoDB
上一篇文章: http://www.cnblogs.com/hoojo/archive/2011/06/01/2066426.html介绍到了在MongoDB的控制台完成MongoDB的数据操作,通过 ...
- JAVA操作MongoDB数据库
1. 首先,下载MongoDB对Java支持的驱动包 驱动包下载地址:https://github.com/mongodb/mongo-java-driver/downloads 2.Java操作Mo ...
- mongodb的基本操作与插入文档(document)
一.mongodb的基本操作: 1.查看mongodb当前所有的databases : show dbs 2.选择数据库(database) : use databaseName(该数据库不存在则会自 ...
- [转]MongoDB for Java】Java操作MongoDB
原文地址: MongoDB for Java]Java操作MongoDB 开发环境: System:Windows IDE:eclipse.MyEclipse 8 Database:mongoDB 开 ...
- servlet中Java连接数据库后的基本操作
servlet中Java连接数据库后的基本操作 在eclipse中新建一个工程:login 在Server中新建一个服务器,基本的操作不用说了,在前两天的笔记中可以找到; 需要知道数据库的用户名和密码 ...
- Java 连接MongoDB
1.驱动 通过java连接MongoDB需要一个java版的驱动 下载地址:http://mongodb.github.io/mongo-java-driver/ 2.连接MongoDB 通过 com ...
- Java操作MongoDB
上一篇文章: http://www.cnblogs.com/hoojo/archive/2011/06/01/2066426.html 介绍到了在MongoDB的控制台完成MongoDB的数据操作,通 ...
- mongDB基本命令和Java操作MongoDB
上一篇博文<mongoDB安装>我们安装了mongoDB,现在来复习一下它的一些基本命令:mongoDB的bin目录加入到path之后,命令行中输入mongo: 然后我们进入正题 1.查看 ...
随机推荐
- Codeforces Round #129 (Div. 1)E. Little Elephant and Strings
题意:有n个串,询问每个串有多少子串在n个串中出现了至少k次. 题解:sam,每个节点开一个set维护该节点的字符串有哪几个串,启发式合并set,然后在sam上走一遍该串,对于每个可行的串,所有的fa ...
- 【期望dp】绵羊跳弹簧
[期望dp] 绵羊跳弹簧 >>>>题目 [题目] T 组数据.对于每一组数据,有n+1 个格子从0 到n 标号,绵羊从0 号结点开始,每次若在 x 位置掷骰子,令掷出的数为nu ...
- C语言博客作业05——指针
1.本章学习总结 1.1思维导图 1.2本章学习体会及代码量 1.2.1学习体会 可能因为之前数组那块儿的作业拖得太久了,以至于我觉得指针学的好快,还没反应过来就教完了,然后一开始做题的时候,就是一脸 ...
- [转]imageMagick 在nodejs中报错Error: spawn identify ENOENT的解决方案
同时还有 Error: Could not execute GraphicsMagick/ImageMagick 这个问题, 也参考了 https://blog.csdn.net/chenxinpen ...
- 简单Socket网络通信
问题:编写一个网络应用程序,有客户端和服务端,客户端向服务端发送一个字符串(如"Hello Socket"),服务器收到该 字符串后将其打印到命令行上,然后向客户端返回该字符串的长 ...
- asp.netajax与jquery和bootstrap的无刷新完美实现
20190421asp.netajax与jquery和bootstrap的无刷新完美实现 设计代码和后台代码中重要部分加粗和深色以及字号加大. 设计前台代码: <%@ Page Title=&q ...
- textarea右下角黑点
先记录问题及解决方法,原因后续深入了解 在布局中,用到了textarea 输入框,在Android手机上却显示右下角有一个黑点,检查代码无误,代码没有多余的点符号. 解决:在textarea 中添加 ...
- 保存cookie状态封装
from urllib import request, parsefrom urllib.error import HTTPError,URLError#保存cookiefrom http impor ...
- bootstrap全局样式
内联子标题: 显示如下: 主体副本: 显示如下: 对齐类: 显示如下: 强调类: 显示如下: 缩略语: 地址: 表格: 加一个class:“table-striped” js里面的奇数偶数行(odd) ...
- vim常用指令
命令历史 以:和/开头的命令都有历史纪录,可以首先键入:或/然后按上下箭头来选择某个历史命令. 启动vim 在命令行窗口中输入以下命令即可 vim 直接启动vim vim filename 打开vim ...