环境
  MongoDB 3.0
  CentOS6.5_x64

相关jar:mongo-java-driver-3.0.0.jar

package com.mongodb;

import java.util.HashMap;
import java.util.Map; import org.bson.Document;
import org.bson.conversions.Bson;
import org.bson.types.ObjectId; import com.mongodb.client.FindIterable;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoCursor;
import com.mongodb.client.MongoDatabase; public class TestMongoDB { public static void main(String[] args)
{
TestMongoDB test = new TestMongoDB();
//插入数据
test.insertData();
//查询数据
test.find();
test.findone();
//更新数据
test.update();
//删除数据
test.delete();
} public void find()
{
//创建连接客户端
MongoClient client = new MongoClient("localhost",27017);
//获取数据库对象
MongoDatabase db = client.getDatabase("test");
//获取操作的集合对象
MongoCollection<Document> collection = db.getCollection("wjy");
//具体操作
FindIterable<Document> it = collection.find();
//获取游标对象
MongoCursor<Document> cursor = it.iterator();
while (cursor.hasNext())
{
//取出每一个文档对象(行)
Document doc = cursor.next();
String name = doc.getString("name");
if ("乔峰".equals(name))
{
Integer age = doc.getInteger("age");
System.out.println(name+","+age);
}
else
{
Double age = doc.getDouble("age");
System.out.println(name+","+age);
} }
//释放资源
cursor.close();
client.close();
} public void findone()
{
MongoClient client = new MongoClient("localhost",27017);
//获取数据库对象
MongoDatabase db = client.getDatabase("test");
//获取操作的集合对象
MongoCollection<Document> collection = db.getCollection("wjy");
//具体操作
Bson filter = new BasicDBObject("_id", new ObjectId("5850eacd7065f52b0eab7ff4"));
FindIterable<Document> it = collection.find(filter);
//获取游标对象
MongoCursor<Document> cursor = it.iterator();
while (cursor.hasNext())
{
//取出每一个文档对象(行)
Document doc = cursor.next();
String name = doc.getString("name");
if ("乔峰".equals(name))
{
Integer age = doc.getInteger("age");
System.out.println(name+","+age);
}
else
{
Double age = doc.getDouble("age");
System.out.println(name+","+age);
} }
//释放资源
cursor.close();
client.close();
} public void insertData()
{
MongoClient client = new MongoClient("localhost",27017);
MongoDatabase db = client.getDatabase("test");
MongoCollection<Document> collection = db.getCollection("wjy");
//使用Map来封装json数据
Map<String,Object> map = new HashMap<String,Object>();
map.put("name", "乔峰");
map.put("age", 35);
map.put("gender", "true man");
Map<String,Object> hobbyMap = new HashMap<String,Object>();
hobbyMap.put("girl", "阿朱");
hobbyMap.put("gongfu", "降龙十八掌");
map.put("hobby", hobbyMap);
Document doc = new Document(map); collection.insertOne(doc); client.close();
} public void update()
{
MongoClient client = new MongoClient("localhost",27017);
MongoDatabase db = client.getDatabase("test");
MongoCollection<Document> collection = db.getCollection("wjy"); Bson filter = new BasicDBObject("_id",new ObjectId("5850eacd7065f52b0eab7ff4")); Map<String,Object> map = new HashMap<String,Object>();
map.put("name", "张无忌");
map.put("age", 35);
Bson update = new BasicDBObject(map); collection.updateOne(filter, new BasicDBObject("$set",update)); client.close();
}
public void delete()
{
MongoClient client = new MongoClient("localhost",27017);
MongoDatabase db = client.getDatabase("test");
MongoCollection<Document> collection = db.getCollection("wjy"); collection.deleteOne(new BasicDBObject("_id",new ObjectId("5850eacd7065f52b0eab7ff4"))); client.close();
}
}

参考:

https://www.w3cschool.cn/mongodb/mongodb-java.html

【MongoDB学习之五】Java中使用MongoDB的更多相关文章

  1. Java中使用MongoDB

    一.为MongoDB设置用户名和密码 MongoDB中验证用户和密码的条件: 1. 服务器启动的时候打开授权认证,即修改MongoDB的配置文件mongodb.conf,增auth = true # ...

  2. MongoDB学习:(二)MongoDB简单使用

    MongoDB学习:(二)MongoDB简单使用 MongoDB使用: 执行mongodb的操作之前,我们需要运行命令,来进入操作命令界面 >mongo 提示该错误,说明我们系统缺少一个补丁,该 ...

  3. MongoDB学习:(一)MongoDB安装

    MongoDB学习:(一)MongoDB安装 MongoDB介绍:     直接百科了: MongoDB安装: 1:下载安装: MongoDB安装:https://www.mongodb.com/do ...

  4. 在java中使用MongoDB数据库

    Java 安装 要想在 Java 程序中使用 MongoDB,需要先确定是否安装了 MongoDB JDBC 驱动,并且要在机器上安装了 Java.查看 Java 教程来确保在机器上安装好 Java. ...

  5. Java中获取MongoDB连接的方法

    首先是所需jar包,Maven中的配置如下: <dependency> <groupId>org.mongodb</groupId> <artifactId& ...

  6. MongoDB学习-在.NET中的简单操作

    1.新建MVC项目, 管理NuGet包,进入下载MongDB.net库文件 2.新增项目DAL数据访问层,引用以下库文件: 3.C# 访问MongoDB通用方法类: using MongoDB.Dri ...

  7. 【MongoDB学习-在.NET中的简单操作】

    1.新建MVC项目, 管理NuGet包,进入下载MongDB.net库文件 2.新增项目DAL数据访问层,引用以下库文件: 3.C# 访问MongoDB通用方法类: using MongoDB.Dri ...

  8. 【MongoDB学习-在.NET中的简单操作类】

    1.新建MVC项目, 管理NuGet包,进入下载MongDB.net库文件 2.新增项目DAL数据访问层,引用以下库文件: 3.C# 访问MongoDB通用方法类: using MongoDB.Dri ...

  9. MongoDB学习笔记—Linux下搭建MongoDB环境

    1.MongoDB简单说明 a MongoDB是由C++语言编写的一个基于分布式文件存储的开源数据库系统,它的目的在于为WEB应用提供可扩展的高性能数据存储解决方案. b MongoDB是一个介于关系 ...

  10. MongoDB学习笔记(四、MongoDB安全管理)

    目录: mongoDB角色 mongoDB初始化账号 mongoDB安全认证 其它常用的命令 mongoDB角色: mongoDB初始化账号: 1.启动mongoDB ./mongod -f mong ...

随机推荐

  1. 推荐系统(recommender systems):预测电影评分--构造推荐系统的一种方法:低秩矩阵分解(low rank matrix factorization)

    如上图中的predicted ratings矩阵可以分解成X与ΘT的乘积,这个叫做低秩矩阵分解. 我们先学习出product的特征参数向量,在实际应用中这些学习出来的参数向量可能比较难以理解,也很难可 ...

  2. 数组的filter方法处理数组内对象元素时,会改变原值

    arr = [{n:11},{n:22},{n:33}] arr.filter(v=>v.n=8) console.log(arr)  //  [{n:8},{n:8},{n:8}]

  3. 为什么 JVM 不用 JIT 全程编译?

    考虑到跨平台,所以无法使用AOT: 考虑到执行效率,所以无法全部使用JIT: 编译技术大约分为两种,一种AOT,只线下(offline)就将源代码编译成目标机器码,这是普遍用在系统程序语言中:另一种是 ...

  4. UI系统的作用

    1.向用户展示信息: 2.将用于与系统的交互解释为指令.

  5. ZOJ3261-Connections in Galaxy War-(逆向并查集+离线处理)

    题意: 1.有n个星球,每个星球有一个编号(1-n)和一个能量值. 2.一开始将某些星球连通. 3.开战后有很多个操作,查询某个星球能找谁求救或者摧毁两颗星球之间的连通路径,使其不能连通.如果连通则可 ...

  6. Codeforces Round #552 (Div. 3)-C-Gourmet Cat

    http://codeforces.com/contest/1154/problem/C 题意: 有一只猫,周一周四周日吃鱼肉,周二周六吃兔肉,周三周五吃鸡肉,现给出三种肉的数量,问最多能吃多少天? ...

  7. 电商平台+keepalived高可用

    192.168.189.131 电商平台 192.168.189.129 MySQL主192.168.189.130 MySQL备192.168.189.181 VIP 配置MySQL为互为主从并结合 ...

  8. apache pinot-docker-compose 运行试用

    apache pinot 是一个实时的OLAP 数据存储,同时包含了自己的查询语言,因为maven 构建花费时间较大 所以使用docker-compose 运行 docker-compose 文件   ...

  9. webpack资源管理

    一.概况 ①webpack不仅可以打包JavaScript模块,甚至它把网页开发中的一切资源的都可以当作模块来打包处理 ②但是webpack本身不支持,它只是一个打包平台,其他资源,例如css.les ...

  10. Salt Highstate数据结构定义

    作者言 这篇文档详细解释了SLS文件中,每个部分的名称与含义,以及SLS中的数据处理后的数据结构. 我只是SaltStack的初学者,如果文中有错误的地方,请不吝赐教.在学习的过程,我做了一些实验,犯 ...