非关系型数据库NoSQL数据层解决方案 之 Mongodb 简介 下载安装 springboot整合与读写操作
MongoDB
简介
MongoDB是一个开源的面向文档的NoSQL数据库,它采用了分布式文件存储的数据结构,是当前非常流行的数据库之一。
以下是MongoDB的主要特点和优势:
-
面向文档的存储:
- MongoDB是一个面向文档的数据库管理系统(Document-Oriented Database),每条数据记录都是一个文档,使用类似JSON格式的BSON(Binary JSON)存储。这种模式使得数据在应用程序中使用起来非常直观和灵活,适合于处理复杂的、不规则的数据结构。
-
灵活的数据模型:
- 文档模型的灵活性使得可以存储不同结构和类型的数据,而无需事先定义数据表的结构。这种灵活性使得MongoDB非常适合应对快速迭代和需求变化频繁的开发环境。
-
高性能:
- MongoDB支持在集群环境中水平扩展,能够处理大规模的数据和高流量的读写操作。它内置了复制和故障转移功能,可以提供高可用性和数据冗余,确保数据的安全性和可靠性。
-
丰富的查询语言:
- MongoDB提供丰富的查询功能,支持动态查询、字段索引、排序、聚合等操作,同时还支持地理空间查询。这些功能使得开发者可以更加灵活地处理数据并执行复杂的数据分析任务。
-
容易扩展和管理:
- MongoDB的架构设计使得它易于部署、管理和扩展。它可以运行在单机或者分布式集群环境中,支持自动分片和负载均衡,能够动态地扩展存储和处理能力。
-
开源和活跃的社区支持:
- MongoDB是开源软件,拥有一个活跃的社区和强大的生态系统。社区提供了丰富的文档、教程和支持资源,使得开发者可以快速入门并解决在使用过程中遇到的问题。
总结来说,MongoDB以其灵活的数据模型、高性能的查询能力、易于扩展和管理等特点,在Web应用开发、大数据分析等领域得到了广泛的应用和认可。
使用场景非常多
Mongodb下载安装
首先得下载
解压安装后
我们在目录里找到了mongodb
我们安装已经安装好了 我们接下来就要将他启动
进入bin文件夹
我们首先初始化mongo的服务端
点击mongod.exe 应用程序
我们用cmd命令行窗口启动
启动代码
mongod --dbpath=..\data\db
接着我们要启动mongo的客户端
类似于redis的启动
mongo
这样就算是启动成功
总览
服务端启动后
进入客户端
然后就可以在cmd窗口里操作数据库 比如说我们可以创建表 写入字段
但是在cmd窗口操作过于复杂
我们有一个图形化界面的客户端可以操作
Mongodb基础操作
我们是在图形化客户端操作工具里面操作
创建数据库
图形化操作界面
基础操作
查询操作
Springboot整合Mongo
新建一个项目
添加依赖
我们可以查看导入对应的坐标
有一个spring项目起步坐标
还有我们刚刚引入的坐标
接下来是写配置文件
作为一个数据库 提供访问数据库对应的url是最基本的
spring:data:mongodb:url: mongodb://localhost/Dduo
接下来我们就可以进行测试了
类似于之前的操作
先类似于redis一样依赖注入一个工具类
便于对Mongodb数据库进行操作
这时候我们才发现要
封装实体类
我们同样要在工程中引入lombok
接下来就能进行测试
插值
我们的期望是
报错
然后报错信息可以很容易的看见
当然 不报错是最好的
但是我们会出现类型转换问题
当我们的类型一样的时候
就能成功查询
我们发现简单的不能再简单了
慢慢的潜移默化中
我们已经学习到了方法
个人号推广
博客主页
多多!-CSDN博客
Web后端开发
https://blog.csdn.net/qq_30500575/category_12624592.html?spm=1001.2014.3001.5482
Web前端开发
https://blog.csdn.net/qq_30500575/category_12642989.html?spm=1001.2014.3001.5482
数据库开发
https://blog.csdn.net/qq_30500575/category_12651993.html?spm=1001.2014.3001.5482
项目实战
https://blog.csdn.net/qq_30500575/category_12699801.html?spm=1001.2014.3001.5482
算法与数据结构
https://blog.csdn.net/qq_30500575/category_12630954.html?spm=1001.2014.3001.5482
计算机基础
https://blog.csdn.net/qq_30500575/category_12701605.html?spm=1001.2014.3001.5482
回忆录
https://blog.csdn.net/qq_30500575/category_12620276.html?spm=1001.2014.3001.5482
相关文章:

非关系型数据库NoSQL数据层解决方案 之 Mongodb 简介 下载安装 springboot整合与读写操作
MongoDB 简介 MongoDB是一个开源的面向文档的NoSQL数据库,它采用了分布式文件存储的数据结构,是当前非常流行的数据库之一。 以下是MongoDB的主要特点和优势: 面向文档的存储: MongoDB是一个面向文档的数据库管理系统࿰…...
使用Redis优化Java应用的性能
使用Redis优化Java应用的性能 大家好,我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿!今天我们来探讨如何使用Redis优化Java应用的性能。Redis是一种开源的内存数据结构…...
基于Python的数据可视化大屏的设计与实现
基于Python的数据可视化大屏的设计与实现 Design and Implementation of Python-based Data Visualization Dashboard 完整下载链接:基于Python的数据可视化大屏的设计与实现 文章目录 基于Python的数据可视化大屏的设计与实现摘要第一章 导论1.1 研究背景1.2 研究目的1.3 研…...

什么是N卡和A卡?有什么区别?
名人说:莫听穿林打叶声,何妨吟啸且徐行。—— 苏轼《定风波莫听穿林打叶声》 本篇笔记整理:Code_流苏(CSDN)(一个喜欢古诗词和编程的Coder😊) 目录 一、什么是N卡和A卡?有什么区别?…...

四边形不等式优化
四边形不等式优化 应用于类似以下dp转移方程。 f i min 1 ≤ j ≤ i ( w i , j , f i ) f_{i}\min_{1\le j\le i}(w_{i,j},f_{i}) fi1≤j≤imin(wi,j,fi) 假设 w i , j w_{i,j} wi,j 可以在 O ( 1 ) O(1) O(1) 的时间内进行计算。 在正常情况下,…...
这家民营银行起诉担保公司?暴露担保增信兜底隐患
来源 | 镭射财经(leishecaijing) 助贷领域中,各路资方依赖担保增信业务扩张数年,其风险积压也不容忽视。一旦助贷平台或担保公司兜不住底,资方就将陷入被动。 最近,一则民营银行起诉合作担保公司的消息引…...

vscode禅模式怎么退出
1、如何进入禅模式:查看--外观--禅模式 2、退出禅模式 按二次ESC,就可以退出。...

Java23种设计模式(四)
1、备忘录模式 备忘录模式(Memento Pattern)保存一个对象的某个状态,以便在适当的时候恢复对象,备忘录模式属于行为型模式。 备忘录模式允许在不破坏封装性的前提下,捕获和恢复对象的内部状态。 实现方式 创建备忘录…...

HTML静态网页成品作业(HTML+CSS)——故宫介绍网页(4个页面)
🎉不定期分享源码,关注不丢失哦 文章目录 一、作品介绍二、作品演示三、代码目录四、网站代码HTML部分代码 五、源码获取 一、作品介绍 🏷️本套采用HTMLCSS,未使用Javacsript代码,共有4个页面。 二、作品演示 三、代…...
Zookeeper:客户端命令行操作
文章目录 一、help二、ls path三、create四、get path五、set六、stat七、delete八、deleteall 一、help 显示所有操作命令。 二、ls path 使用ls命令来查看当前znode的子节点[可监听] w:监听子节点变化。s:附加次级信息。 三、create 普通创建&am…...
区块链技术介绍和用法
区块链技术是一种分布式账本技术,可以记录和存储一系列交易信息,并通过密码学算法保证信息的安全性和不可篡改性。区块链技术的核心概念是“区块”和“链”。 每个区块包含了一部分交易信息,以及一个指向上一个区块的哈希值。当新的交易发生…...

Upload-Labs-Linux1 使用 一句话木马
解题步骤: 1.新建一个php文件,编写内容: <?php eval($_REQUEST[123]) ?> 2.将编写好的php文件上传,但是发现被阻止,网站只能上传图片文件。 3.解决方法: 将php文件改为图片文件(例…...

从 Hadoop 迁移,无需淘汰和替换
我们仍然惊讶于有如此多的客户来找我们,希望从HDFS迁移到现代对象存储,如MinIO。我们现在以为每个人都已经完成了过渡,但每周,我们都会与一个决定进行过渡的主要、高技术性组织交谈。 很多时候,在这些讨论中ÿ…...

深度学习:从理论到应用的全面解析
引言 深度学习作为人工智能(AI)的核心技术之一,在过去的十年中取得了显著的进展,并在许多领域中展示了其强大的应用潜力。本文将从理论基础出发,探讨深度学习的最新进展及其在各领域的应用,旨在为读者提供全…...

【02】区块链技术应用
区块链在金融、能源、医疗、贸易、支付结算、证券等众多领域有着广泛的应用,但是金融依旧是区块链最大且最为重要的应用领域。 1. 区块链技术在金融领域的应用 1.2 概况 自2019年以来,国家互联网信息办公室已发布八批境内区块链信息服务案例清单&#…...
一篇文章搞懂残差网络算法
残差网络(Residual Network,简称ResNet)是一种深度学习架构,它在2015年由微软研究院的Kaiming He等四位作者提出。ResNet的提出是为了解决深度神经网络训练中的梯度消失和梯度爆炸问题,以及随着网络层数增加而出现的性能退化问题。本文将详细介绍残差网络算法的定义、产生…...

网络安全:Web 安全 面试题.(SQL注入)
网络安全:Web 安全 面试题.(SQL注入) 网络安全面试是指在招聘过程中,面试官会针对应聘者的网络安全相关知识和技能进行评估和考察。这种面试通常包括以下几个方面: (1)基础知识:包括网络基础知识、操作系…...

XSS学习(绕过)
学习平台:xss.tesla-space.com XSS学习(绕过) level1level2level3level4level5level6level7level8level9level10level11level12level13level14 level1 应该没有过滤 https://xss.tesla-space.com/level1.php?name<script>alert(1);&…...
深信服2024笔试
一 :服务器 小明是一名公司的IT运维工程师,负责管理公司的IT系统。公司总共有两个配置相同的服务器A和B,各运行了若干个服务。现在小明发现两台服务器上运行的服务占用的内存总和不相等(假设每个服务占用内存是-个恒定正整数),打…...
IOS Swift 从入门到精通:闭包 第一部分
文章目录 创建基本闭包在闭包中接受参数从闭包返回值闭包作为参数尾随闭包语法 创建基本闭包 Swift 允许我们像使用字符串和整数等其他类型一样使用函数。这意味着您可以创建一个函数并将其分配给一个变量,使用该变量调用该函数,甚至可以将该函数作为参…...

【CSS position 属性】static、relative、fixed、absolute 、sticky详细介绍,多层嵌套定位示例
文章目录 ★ position 的五种类型及基本用法 ★ 一、position 属性概述 二、position 的五种类型详解(初学者版) 1. static(默认值) 2. relative(相对定位) 3. absolute(绝对定位) 4. fixed(固定定位) 5. sticky(粘性定位) 三、定位元素的层级关系(z-i…...

el-switch文字内置
el-switch文字内置 效果 vue <div style"color:#ffffff;font-size:14px;float:left;margin-bottom:5px;margin-right:5px;">自动加载</div> <el-switch v-model"value" active-color"#3E99FB" inactive-color"#DCDFE6"…...

CocosCreator 之 JavaScript/TypeScript和Java的相互交互
引擎版本: 3.8.1 语言: JavaScript/TypeScript、C、Java 环境:Window 参考:Java原生反射机制 您好,我是鹤九日! 回顾 在上篇文章中:CocosCreator Android项目接入UnityAds 广告SDK。 我们简单讲…...

令牌桶 滑动窗口->限流 分布式信号量->限并发的原理 lua脚本分析介绍
文章目录 前言限流限制并发的实际理解限流令牌桶代码实现结果分析令牌桶lua的模拟实现原理总结: 滑动窗口代码实现结果分析lua脚本原理解析 限并发分布式信号量代码实现结果分析lua脚本实现原理 双注解去实现限流 并发结果分析: 实际业务去理解体会统一注…...
Axios请求超时重发机制
Axios 超时重新请求实现方案 在 Axios 中实现超时重新请求可以通过以下几种方式: 1. 使用拦截器实现自动重试 import axios from axios;// 创建axios实例 const instance axios.create();// 设置超时时间 instance.defaults.timeout 5000;// 最大重试次数 cons…...

tree 树组件大数据卡顿问题优化
问题背景 项目中有用到树组件用来做文件目录,但是由于这个树组件的节点越来越多,导致页面在滚动这个树组件的时候浏览器就很容易卡死。这种问题基本上都是因为dom节点太多,导致的浏览器卡顿,这里很明显就需要用到虚拟列表的技术&…...

Reasoning over Uncertain Text by Generative Large Language Models
https://ojs.aaai.org/index.php/AAAI/article/view/34674/36829https://ojs.aaai.org/index.php/AAAI/article/view/34674/36829 1. 概述 文本中的不确定性在许多语境中传达,从日常对话到特定领域的文档(例如医学文档)(Heritage 2013;Landmark、Gulbrandsen 和 Svenevei…...

mac 安装homebrew (nvm 及git)
mac 安装nvm 及git 万恶之源 mac 安装这些东西离不开Xcode。及homebrew 一、先说安装git步骤 通用: 方法一:使用 Homebrew 安装 Git(推荐) 步骤如下:打开终端(Terminal.app) 1.安装 Homebrew…...

代码规范和架构【立芯理论一】(2025.06.08)
1、代码规范的目标 代码简洁精炼、美观,可持续性好高效率高复用,可移植性好高内聚,低耦合没有冗余规范性,代码有规可循,可以看出自己当时的思考过程特殊排版,特殊语法,特殊指令,必须…...
Pydantic + Function Calling的结合
1、Pydantic Pydantic 是一个 Python 库,用于数据验证和设置管理,通过 Python 类型注解强制执行数据类型。它广泛用于 API 开发(如 FastAPI)、配置管理和数据解析,核心功能包括: 数据验证:通过…...