SpringBoot整合MongoDB
- NoSQL(Not Only SQL),即反SQL运动或者是不仅仅SQL,指的是非关系型的数据库,是一项全新的数据库革命运动,是一种全新的思维注入
- NoSQL优点
- 数据库高并发读写
- 海量数据高效率存储和访问
- 数据库高扩展性和高可用性
- NoSQL缺点
- 数据库事务一致性需求
- 数据库的写实时性和读实时性需求
- 复杂的SQL查询,特别是夺标关联查询的需求
- MongoDB概述
- 由C++语言编写,是一个基于分布式文件存储的开源数据库系统;在高负载的情况下,添加更多的节点,可以保证服务器性能
- MongoDB旨在为WEB应用提供可扩展的高性能数据存储解决方案;将数据存储为一个文档,数据结构由键值对组成。MongoDB文档类似于JSON对象字段值可以包含其他问你当、数组及文档数组
- MongoDB特点
- MongoDB是一个面向文档存储的数据库,操作起来比较简单和容易
- MongoDB记录总可以设置任何属性的索引
- 可以通过本地后者网络创建数据镜像,这使得MongoDB有更强的扩展性
- 如果负载的增减(需要跟多的存储空间和更强的处理能力),它可以分布在计算机网络中的其他节点上,这就是所谓的分片
- MongoDB支持丰富的查询表达式,查询指令使用JSON形式的标记,可轻易查询文档中内嵌的对象和数组
- MongoDB使用update()命令可以实现替换完成的文档(数据)或者一些指定的数据字段
- MongoDB中的Map/reduce主要是用来对数据进行批量处理和聚合操作
- Map和Reduce
- Map函数调用emit(key, value)便利集合中所有的记录,将key域value传给Reduce函数进行处理
- Map和Reduce函数是使用JavaScript编写的,把那个可以通过db.runCommand或mapreduce命令来执行MapReduce操作
- GridFS是MongoDB中的一个内置功能,可以用于存放大量的小文件
- MongoDB允许在服务端执行脚本,可以用JavaScript编写某个函数,直接在服务端执行,也可以把函数的定义存储在服务端,下次直接调用即可
- MongoDB支持跟中编程语言:
RUBY
、PYTHON
、JAVA
、C++
、PHP
、C#
- 安装简单
- MongoDB语法:略
- SpringBoot整合MongoDB
- 集成简介:spring-data-mongodb提供了MongoTemplate和MongoRepository两种方式访问MongoDB;MongoTemplate操作灵活,MongoRepository操作简单,不够灵活
- 添加相关依赖
- 添加配置
- 创建与集合对应的实体类
- 测试MongoTemplate访问MongoDB(CRUD)
- 相比于MongoTemplate,MongoRepository实现CRUD操作,还需要创建一个继承MongoRepository接口的接口,如
- 测试MongoRepository访问MongoDB(CRUD)
__EOF__

本文作者:xsha_h
本文链接:https://www.cnblogs.com/aitiknowledge/p/16529180.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
本文链接:https://www.cnblogs.com/aitiknowledge/p/16529180.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!