SpringBoot——整合Mongodb

2023-11-16

简单介绍

Mongdb是一个开源,高性能,无模式的文档型数据库,NoSQL数据库产品中的一种,是最像关系型数据库的非关系型数据库。

使用场景

  • 用户数据
    • 存储位置:数据库
    • 特征:永久性存储,修改频率极低
  • 游戏装备数据
    • 存储位置:数据库,MongDB
    • 特征:永久性存储与临时存储相结合,修改频率较高
  • 直播数据、打赏数据、粉丝数据
    • 存储地址:数据库,MongDB
    • 特征:永久性存储与临时存储相结合,修改频率极高
  • 物联网数据
    • 存储位置:MongDB
    • 特征:临时存储,修改频率飞快

总结:MongDB适合用于存储变化速度快的临时数据。

下载安装

下载MongoDB社区服务器 |蒙戈数据库

点击链接打开之后,你会来到MongoDB的下载界面:

下滑找到下载按钮,你会找到MongDB的下载按钮,下载好之后就是一个msi的安装包,按照步骤一步一步的下载安装好就可以了,更快捷的方式还可以选择直接下载ZIP包进行解压之后直接使用。

安装好之后,我们打开MongDB的bin目录,只要能看到这些文件就可以了

然后我们退回到MongDB的主目录下面,创建一个存放MongDB数据的目录:注意上面的路径的位置,是在MongDB的主目录下面再放一个目录叫做data,然后data下面再创建一个目录叫做db,然后我们再次回到bin目录下:这个文件就是MongDB的服务启动程序,我们在命令行中使用命令去启动它:

mongod --dbpath=..\data\db

看到输出了很多的内容,这就是初始化数据库的创建过程

MongDB的默认端口是27017,这个在上面的信息都可以看到:

所有的启动信息都可以在上面看到,就是不怎么好找

现在启动的是MongDB的服务端,接下来要启动MongDB的客户端,根据你安装方式的不同,客户端的启动方式也不一样,如果你是使用msi安装的MongDB,那么你的客户端就是你的桌面图标,如果你没有生成桌面图标,那么他的位置在:

如果你是使用的解压安装,那么客户端的名字就直接叫mong,并且位置和服务端的位置是一样的。

但其实默认的客户端并不好用,我直接打开IDEA,找到MongDB的连接选项:

配置保持默认就行,然后直接点击确定:

<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-data-mongodb</artifactId>
</dependency>

 直接就能打开一个在IDEA中操作MongDB的控制台。 

SpringBoot整合MongDB

首先加入依赖

<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-data-mongodb</artifactId>
</dependency>

修改对应的MongDB的配置信息:

 关键的配置信息只有一个,就是连接的地址,他的值的格式是

mongodb://主机地址:端口号/数据库

端口号如果不写,默认就是27017

然后就是编写测试类:

package com.example.spring01;

import com.example.spring01.pojo.book;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.data.mongodb.core.MongoTemplate;

@SpringBootTest
class Spring01ApplicationTests {
//	自动装配操作MongDB的对象
	@Autowired
	private MongoTemplate mongoTemplate;

	@Test
	void contextLoads() {
		book b = new book();
		b.setName("语文");
		b.setPrice(12);
//		save方法对应保存数据,可以直接将Java对象保存到MongDB的数据库中
		mongoTemplate.save(b);
	}
	@Test
	void find(){
//		fondAll方法查询所有的数据,参数是一个class文件,表示将数据库中的数据封装到class中
		for (book book : mongoTemplate.findAll(book.class)) {
			System.out.println(book);
		}
	}
}

关于SpringBoot整合第三方技术的方法就是,首先导入starter,然后编写配置,最后编写对应的API方法实现对应的业务即可

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SpringBoot——整合Mongodb 的相关文章

随机推荐

  • 序列最小最优化算法(SMO算法)

    前面三篇我已经谈了谈我对支持向量机的理解 推到了各类支持向量机的对偶算法 我们有很多最优化算法来求解这个问题 但是样本容量很大时 这些算法会变得非常低效 人们就提出了很多快速实现算法 SMO算法就是其中之一 主要是用来解这个对偶问题 s t
  • PCL RANSAC拟合球体(C++详细过程版)

    目录 一 算法原理 二 代码实现 三 结果展示 一 算法原理 RANSAC拟合球体的算法原理已在其他博客中多次进行过详细描述 如PCL RANSAC拟合空间3D球体等 并且相关论文也很丰富 因此 这里不再做算法原理的重复阐述 本文重点在于使
  • 打印堆栈

    traceback print stack
  • SVN相关

    svn更新失败提示cleanup的解决方法 问题解决 https blog csdn net study4034 article details 80656882 注意关闭unity SVN更新后提示 One or more files a
  • 卷(二)C++___二刷

    Chapter 8 Type Conversion and Function Overloading 8 1 Implicit type conversion coercion The integer value 3 might be st
  • 合宙Air103

    基础资料 基于Air103开发板 Air103 LuatOS 文档 上手 开发上手 LuatOS 文档 探讨重点 对官方SPI FLASH demo中功能的复现 进行相关内容的学习及探讨 实现功能 功能 lua快速驱动 W25QXX XX代
  • windows:自定义内网ip后无法上网

    有可能能是ip冲突
  • Markdown给公式添加编号

    Markdown给公式添加编号 a 2 b 2 c 2 tag 1 2 由公式 1 2 即可得到结论
  • Eureka集群原理

    问题 微服务RPC远程服务调用最核心的是什么 高可用 试想你的注册中心只有一个only one 它出故障了那就呵呵o o了 会导致整个微服务环境不可用 解决办法 搭建Eureka注册中心集群 实现负载均衡 故障容错 Eureka集群的原理
  • c语言之字符串数组

    还是在写图的存储结构的时候 遇到了问题 就是如何在一个数组中存放字符串 我相信这个问题 对于面向对象的编程语言来说 轻而易举 比如对于Java来说 直接像下面就可以了 但是c语言没有String这个类型 能想到存放字符串的数据类型就是cha
  • 千万级SQL Server数据库表分区的实现

    一般在千万级的数据压力下 分区是一种比较好的提升性能方法 本文将介绍SQL Server数据库表分区的实现 AD 最近使用SQL SERVER一个的缓存 数据量一天100w的速度增长 同时接受客户查询 速度由于数据量越来越大越来越慢 这里感
  • vue3+ts 时间戳转日期格式

    时间戳转换成日期格式 调用 timestampToTime 1680498539 日期补0 const getzf num number string number gt const numShow string number num lt
  • EXCEL 做的购订单管理系统

    EXCEL 做的购订单管理系统 需要的下载 采购订单管理系统 01 总体说明 1 本系统主要用于采购订单以及付款管理 可进行供应商信息 产品信息的基础信息维护 可录入采购明细对采购金额进行付款 可对采购按照产品和采购日期范围查询 对采购明细
  • memset和memset_s

    void memset void s int ch size t n 函数解释 将s中前n个字节 typedef unsigned int size t 用 ch 替换并返回 s memset 作用是在一段内存块中填充某个给定的值 它是对较
  • TTransportException: java.net.ConnectException: Connection refused: connect异常

    看视频学用Thrift时遇到的 环境 win7 thrift 0 12 0 python37 jdk1 8 IDE IJ PC 本机java客户端 连 本机python服务器 部分代码 serverSocket TSocket TServe
  • 数据挖掘-数据探索(EDA)

    数据探索 EDA Exploratory Data Analysis 1 EDA的作用 EDA的作用主要在于熟悉并了解数据集 对数据集进行处理 以便接下来机器学习或者深度学习使用 了解数据集之后 接下来就是了解数据集中各变量间的相互关系 变
  • 2020年6月100篇最新GAN论文汇总

    点击上方 机器学习与生成对抗网络 关注 星标 获取有趣 好玩的前沿干货 戳我 查看GAN的系列专辑 据不完全统计 GAN在CVPR2020上超115篇之多 其中 可看到GAN在朝着无监督 自监督 弱监督 半监督 少样本 单样本 零样本 多模
  • 2024王道408数据结构P144 T16

    2024王道408数据结构P144 T16 思考过程 首先看题目 要求我们把二叉树的叶子结点求出来并且用链表的方式存储 链接时用叶结点的右指针来存放单链表指针 我们很清楚可以看出来能用中序遍历 递归的方式实现 因为第一个叶子结点在整棵树的最
  • Android中拍照和录像功能

    目前Android中有很多项目需要实现拍照及录像功能 通常都使用camera和sufaceView实现 整个过程较为繁琐 并且代码量比较大 偶然在github上发现一个很好用的框架 在这里做一个简单介绍 后附github地址 gif 原项目
  • SpringBoot——整合Mongodb

    简单介绍 Mongdb是一个开源 高性能 无模式的文档型数据库 NoSQL数据库产品中的一种 是最像关系型数据库的非关系型数据库 使用场景 用户数据 存储位置 数据库 特征 永久性存储 修改频率极低 游戏装备数据 存储位置 数据库 Mong