SpringBoot——整合Mongodb

简单介绍

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

然后就是编写测试类:

java 复制代码
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方法实现对应的业务即可

相关推荐
OceanBase数据库官方博客41 分钟前
亮相“十五五”公积金高质量发展大会“AI 数据库”助力智慧公积金升级
数据库·人工智能
龙虾PRO1 小时前
高并发场景数据库调优实操:目标定位、监控方法与优化维度全解析
数据库·oracle
达梦产品与服务1 小时前
SQLark 实战 | 高频 SQL 脚本的导入、管理与复用
数据库·sql·数据库开发·数据库运维·脚本管理·sqlark百灵连接·sql脚本
InfinitePlus2 小时前
redis数据持久化
数据库·redis·缓存
忧郁的橙子.2 小时前
深入浅出etcd与Raft:从核心组件到数据一致性原理
数据库·etcd
鱼鳞_3 小时前
热门八股-MySQL
数据库·mysql
小尘要自信3 小时前
软件远控失效以后怎么办?玩客云 + One-KVM 实现 BIOS 级远程画面与键鼠控制
服务器·网络·数据库
这个DBA有点耶3 小时前
数据库“家谱”系列之一:关系型数据库的4大核心组件详解
数据库·mysql·架构
ClouGence3 小时前
数据库迁移同步工具 CloudCanal v6.4.0.0 发布,Oracle、SAP Hana 等同步能力再升级
数据库
ClouGence3 小时前
2026 数据库 CI/CD 工具大盘点:4 款热门工具怎么选?
数据库·后端·ci/cd