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方法实现对应的业务即可

相关推荐
DBA小马哥20 小时前
Oracle迁移实战:如何轻松跨越异构数据库的学习与技术壁垒
数据库·学习·oracle·信创·国产化平替
暮乘白帝过重山20 小时前
ArkTS ForEach 参数解析:组件与键值生成器
开发语言·数据库
菜鸟plus+20 小时前
N+1查询
java·服务器·数据库
子夜江寒20 小时前
MySQL 表创建与数据导入导出
数据库·mysql
菜鸟小九21 小时前
redis基础(安装配置redis)
数据库·redis·缓存
保定公民21 小时前
达梦数据库使用cp备份集恢复报错分析与解决
数据库
中冕—霍格沃兹软件开发测试1 天前
测试用例库建设与管理方案
数据库·人工智能·科技·开源·测试用例·bug
The star"'1 天前
mysql(4-7)
数据库·mysql·adb
jiayong231 天前
Redis面试深度解析
数据库·redis·面试
思成不止于此1 天前
【MySQL 零基础入门】DQL 核心语法(四):执行顺序与综合实战 + DCL 预告篇
数据库·笔记·学习·mysql