NoSQL(NoSQL = Not Only SQL ),意即"不仅仅是SQL"。
NoSQL用于超大规模数据的存储。(例如谷歌或Facebook每天为他们的用户收集万亿比特的数据)。这些类型的数据存储不需要固定的模式,无需多余操作就可以横向扩展。
MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统。
在高负载的情况下,添加更多的节点,可以保证服务器性能。
MongoDB 旨在为WEB应用提供可扩展的高性能数据存储解决方案。
MongoDB 将数据存储为一个文档,数据结构由键值(key=>value)对组成。MongoDB 文档类似于 JSON 对象。字段值可以包含其他文档,数组及文档数组。
本教程介绍mongodb的简单使用和与spirngboot整合的方法,不介绍安装。不管我们学习什么数据库都应该学习其中的基础概念,在mongodb中基本的概念是文档、集合、数据库,下面我们挨个介绍。
下表将帮助您更容易理解Mongo中的一些概念:
下面介绍简单的命令:
show dbs; //"show dbs" 命令可以显示所有数据的列表
use local; //运行"use"命令,可以连接到一个指定的数据库,也可以创建不存在的数据库
db.dropDatabase() //删除数据库
db.createCollection(name, options) // 创建集合
db.collection.drop() //删除集合
db.COLLECTION_NAME.insert(document) //插入文档
MongoDB 使用 update() 和 save() 方法来更新集合中的文档。接下来让我们详细来看下两个函数的应用及其区别。
MongoDB数据更新可以使用update()函数。在执行remove()函数前先执行find()命令来判断执行的条件是否正确,这是一个比较好的习惯。remove() 方法的基本语法格式如下所示:
MongoDB 查询数据的语法格式如下:
db.collection.find(query, projection)
以上为mongodb的一些基本操作,具体学习可以参考我的mongdb教程。下面介绍与springboot的整合。
在springboot中使用mongodb也像使用JPA一样容易,并且同意拥有功能完善的资源库。要使用mongodb,首先添加依赖:
mongodb是文档型数据库,使用mongodb也可以像使用关系数据库那样为文档建模,如下:
mongodb也有像JPA那样的资源库,如下:
下一步在配置文件中加入mongdb的基本配置,如下:
下面是代码:
下面是操作前的数据库:
直接执行测试方法,保存数据,然后查看数据库,可以看到新增成功:
上面是一个简单的连接数据库和新增数据的示例。还有很多方法在资源库中,如下:
可以看到默认实现了很多mongodb的操作.
代码地址: https://gitee.com/blueses/spring-boot-demo