Java知识系列之使用MongoDB.insert()与find()学习

本文主要是介绍如何使用Java访问与操作MongoDB数据库,包含以下内容:

- 如何连接数据库

- 如何插入新数据

- 如何查找数据并输出

Java知识系列之使用MongoDB.insert()与find()学习

MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。

是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。他支持的数据结构非常松散,是类似json的bson格式,因此可以存储比较复杂的数据类型。Mongo最大的特点是他支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。

以下是详细过程

第一步: 准备MongoDB驱动

下载驱动: mongo-java-driver-3.5.0.jar

Java知识系列之使用MongoDB.insert()与find()学习

请无视Mongo以外的Jar包

把MongoDB的Jar包添加到新建的Java项目中

第二步: 写代码

- 需要import哪些包?

Java知识系列之使用MongoDB.insert()与find()学习

- 如何连接数据库

连接数据库的方法有很多种, 这里只介绍其中一种, 更多的可以上官网查询文档


//连接服务器

MongoClient mongoClient = new MongoClient("192.168.6.42", 27017 );

//访问数据库

MongoDatabase database = mongoClient.getDatabase("mydb");

//访问数据表

MongoCollection collection = database.getCollection("test");

如果服务器上数据库不存在,则会自动创建一个新的数据库"mydb"

数据表不存在也会自动创建新的数据表"test"

Java知识系列之使用MongoDB.insert()与find()学习

连接前, 用工具先看看, 数据库"mydb"是不存在的

- 如何插入数据

用Java插入数据,要用到Document这个类

数据类型用Json

Java知识系列之使用MongoDB.insert()与find()学习

具体实现代码如下

Java知识系列之使用MongoDB.insert()与find()学习

例子中分别有插入1条数据的样例, 也有一次插入多条数据的方法

Java知识系列之使用MongoDB.insert()与find()学习

运行后,可以看到数据库,数据表和数据都已成功生成

- 如何查询数据

有了数据后, 来看看如何把数据查询出来并打印输出

输出1条数据用:collection.find().first();

输出多条数据用:collection.find()

多条数据可以借助iterator迭代器轮询输出

Java知识系列之使用MongoDB.insert()与find()学习

小结

从上文看到, Java操作MongoDB并不复杂, 但进阶应用中, 如何利用find来得到各种指定条件的数据就稍微有些复杂, 感觉兴趣的朋友可以关注我的头条号, 后面我会写一些find()进阶使用方法, 并与SQL常用的select做一些对比


分享到:


相關文章: