环境
  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. 搭建unity客户端

    1.新建个unity的项目ChatClient 2.在unity的Main Camera下挂载个脚本PhotonServerEngine做为与服务器端通信的脚本 3.在PhotonServerEngi ...

  2. CodeChef Tree Palindromes

    Tree Palindromes Given a tree rooted at node 1 with N nodes, each is assigned a lower case latin cha ...

  3. 分析脚本搭建docker环境:python, R

    1. 搭建Anaconda Python3.6 FROM nvidia/cuda:8.0-cudnn6-devel-ubuntu16.04 MAINTAINER Tyan <tyan.liu.g ...

  4. 瀑布流插件|jquery.masonry|使用demo

    Maonsry+Infinite-Scroll实现滚动式分页,网上有很多,这里只说: 瀑布流插件的一个基本使用,附上基本功能的demo <html> <head> <me ...

  5. 恕我直言,在座的各位根本不会写 Java!

    恕我直言,在座的各位根本不会写 Java! java思维导图 作者:Lrwin,软件架构师. 导语 自 2013 年毕业后,今年已经是我工作的第 4 个年头了,总在做 Java 相关的工作,终于有时间 ...

  6. moco搭建json api网站用于接口测试

    java -jar moco-runner-1.0.0-standalone.jar http -p 12306 -c config/conf.json 配置文件 [ { "request& ...

  7. 少女NULL中

    NULL inline void read (int &now) { register ; ; !isdigit (word); word = getchar ()) ; + word - ' ...

  8. VxLAN原理

    VxLAN 背景介绍: 从上个世纪虚拟化技术就被提出,但由于硬件技术达不到,而没能被重视,自本世纪初硬件制造技术越来越来强,导致很多单台物理机只跑一个应用或几个应用根本无法完全使用硬件的全部性能,导致 ...

  9. JVM和ClassLoader

    JVM和ClassLoader 2019-11-08 目录 1 JVM架构整体架构 1.1 类加载器子系统 1.1.1 加载 1.1.2 链接 1.1.3 初始化 1.2 运行时数据区(Runtime ...

  10. Johnson算法:多源最短路算法

    Johnson算法 请不要轻易点击标题 一个可以在有负边的图上使用的多源最短路算法 时间复杂度\(O(n \cdot m \cdot log \ m+n \cdot m)\) 空间复杂度\(O(n+m ...