SpringBoot 整合 MongoDB|学习笔记

本文涉及的产品
云数据库 MongoDB,独享型 2核8GB
推荐场景:
构建全方位客户视图
简介: 快速学习 SpringBoot 整合 MongoDB

开发者学堂课程【SpringBoot 实战教程 SpringBoot 整合 MongoDB】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/651/detail/10815


SpringBoot 整合 MongoDB


内容介绍:

一、介绍

二、操作

 

一、介绍

1、MongoDB 是一个基于分布式文件存储的数据库。由 C++语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。MongoDB 属于文档型数据库他支持的数据结构非常松散是类似 json 的 bson 格式,因此可以存储比较复杂的数据类型。Mongo 最大的特点是他支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。

2、redis 是以键值对的形式存储的不管是什么类型的都需要转成字符串进行存储


二、操作

如何在 springboot 中使用 MongoDB

1、MongoDB可以在线安装在linux中安装安装后进行启动如果要在springboot集成MongoDB首先要做架包依赖以下是 springboot提供的MongoDB 的依赖把它放进工程中工程是 springboot 集成 mybatis 的案例在这个基础之上加入缓存的使用

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-data-mongodb</artifactId>

</dependency>

2、MongoDB 是在另外一台服务器上指明 MongoDB 的 IP 地址还有相应的端口号这些需要在全局配置文件中进行配置

配置:

spring:

datasource :

driver-class-name: com . mysql . jdbc .Driver

username :root

password :root

url: jdbc :mysql: / /localhost: 3306/db1

data:

mongodb:

host:192.168.25.130  IP 地址

port:27017  MongoDB 默认端口号

database:mydb  使用的数据库

3、如何使用 MongoDB 存数据或取数据

service 中一共有两个功能一个是添加用户一个是根据姓名查找用户操作的是 mysql 数据库

@Override

public Users findUserByName (String name) {

ReturnusersMapper . findByName (name) ;

@Override

public void addUser (Users user) {

usersMapper . save (user .getName () , user .getPassword() ) ;

}

在 controller 中使用 MongoDBspringboot 在启动时已经做了自动配置

@Autowired 直接注入

private MongoTemplate mongoTemplate提供了 MongoDB 模版使用模版向 MongoDB 中存数据或取数据

@Reques tMapping ("/ findUse rByName")

@ResponseBody

public UsersfindUserByName (String name)

{

return userService. findUse rByName (name) ;

}

@RequestMapping ("/ addUser")

@ResponseBody

public String addUser (Users user)

向数据库中添加用户把以下用户添加到 MongoDB 如果存储到 MongoDB ID 需要指定值MongoDB 可以直接存储对象直接把 users 对象传过来即可这样这个对象就以 bson 的格式存储在 MongoDB

Usersu=newUsers () ;

u. setId(123)

u. setName ("欧耶") ;

u. setPassword("666888") ;

u. setEmail ("cg@163. com") ;

u. setBi rthday (new Date () ) ;

//userService . addUser (user) ;

mongoTemplate.save(u) ;

return" success" ;

}

再将 MongoDB 中的对象取出再添加一个功能.

@RequestMapping("/ list")

@ResponseBody

PublicList<Users> findUsers ()

{

Return mongoTemplate. findAll (Users.class) ;利用模版进行取出只需要指定找的对象的字节码类型即可它返回的就是list的集合

}

}

4、进行启动先在 MongoDB 中存储一个用户叫欧耶再从里面取出首先访问 adduser再访问 list

5、输入localhost:8080/addUser添加成功

image.png

Findall只要是 users 类型的都可以取出如果向 MongoDB 中存储过 users 类型也可以取出输入localhost:8080/list取出了两个在 springboot 中集成 MongoDB 比较简单

image.png

相关实践学习
MongoDB数据库入门
MongoDB数据库入门实验。
快速掌握 MongoDB 数据库
本课程主要讲解MongoDB数据库的基本知识,包括MongoDB数据库的安装、配置、服务的启动、数据的CRUD操作函数使用、MongoDB索引的使用(唯一索引、地理索引、过期索引、全文索引等)、MapReduce操作实现、用户管理、Java对MongoDB的操作支持(基于2.x驱动与3.x驱动的完全讲解)。 通过学习此课程,读者将具备MongoDB数据库的开发能力,并且能够使用MongoDB进行项目开发。 &nbsp; 相关的阿里云产品:云数据库 MongoDB版 云数据库MongoDB版支持ReplicaSet和Sharding两种部署架构,具备安全审计,时间点备份等多项企业能力。在互联网、物联网、游戏、金融等领域被广泛采用。 云数据库MongoDB版(ApsaraDB for MongoDB)完全兼容MongoDB协议,基于飞天分布式系统和高可靠存储引擎,提供多节点高可用架构、弹性扩容、容灾、备份回滚、性能优化等解决方案。 产品详情: https://www.aliyun.com/product/mongodb
相关文章
|
2月前
|
NoSQL Java MongoDB
SpringBoot中MongoDB的那些高级用法
本文探讨了在Spring Boot项目中使用MongoDB的多种方式及其高级用法。MongoDB作为一种NoSQL数据库,在某些场景下相较于SQL数据库有着独特的优势。文中详细介绍了在Spring Boot中使用MongoDB的三种主要方式:直接使用官方SDK、使用Spring JPA以及使用MongoTemplate,并对比分析了它们之间的差异。此外,文章深入讲解了Spring Data MongoDB提供的各种注解(如@Id, @Document, @Field等)以简化操作流程,并探讨了MongoTemplate监听器的应用,如设置主键值、记录日志等。
|
2月前
|
NoSQL Java MongoDB
SpringBoot中MongoDB的那些骚操作用法
MongoDB作为一种NoSQL数据库,在不需要传统SQL数据库的表格结构的情况下,提供了灵活的数据存储方案。在Spring Boot中可以通过官方SDK、Spring JPA或MongoTemplate等方式集成MongoDB。文章重点介绍了Spring Data MongoDB提供的注解功能,例如`@Id`、`@Document`和`@Field`等,这些注解简化了Java对象到MongoDB文档的映射。此外,文中还讨论了MongoTemplate监听器的使用,包括设置主键值和日志记录等高级特性。
145 0
SpringBoot中MongoDB的那些骚操作用法
|
2月前
|
NoSQL Java MongoDB
MongoDB 读写分离——SpringBoot读写分离
MongoDB 读写分离——SpringBoot读写分离
62 0
|
3月前
|
NoSQL Java MongoDB
Spring Boot与MongoDB的集成应用
Spring Boot与MongoDB的集成应用
|
3月前
|
存储 NoSQL Java
使用Spring Boot和MongoDB构建NoSQL应用
使用Spring Boot和MongoDB构建NoSQL应用
|
5月前
|
NoSQL Java MongoDB
【MongoDB 专栏】MongoDB 与 Spring Boot 的集成实践
【5月更文挑战第11天】本文介绍了如何将非关系型数据库MongoDB与Spring Boot框架集成,以实现高效灵活的数据管理。Spring Boot简化了Spring应用的构建和部署,MongoDB则以其对灵活数据结构的处理能力受到青睐。集成步骤包括:添加MongoDB依赖、配置连接信息、创建数据访问对象(DAO)以及进行数据操作。通过这种方式,开发者可以充分利用两者优势,应对各种数据需求。在实际应用中,结合微服务架构等技术,可以构建高性能、可扩展的系统。掌握MongoDB与Spring Boot集成对于提升开发效率和项目质量至关重要,未来有望在更多领域得到广泛应用。
207 3
【MongoDB 专栏】MongoDB 与 Spring Boot 的集成实践
|
3月前
|
NoSQL Java MongoDB
如何在Spring Boot应用中集成MongoDB数据库
如何在Spring Boot应用中集成MongoDB数据库
|
4月前
|
NoSQL Java MongoDB
如何在Spring Boot应用中集成MongoDB数据库
如何在Spring Boot应用中集成MongoDB数据库
|
4月前
|
NoSQL Java 关系型数据库
非关系型数据库NoSQL数据层解决方案 之 Mongodb 简介 下载安装 springboot整合与读写操作
非关系型数据库NoSQL数据层解决方案 之 Mongodb 简介 下载安装 springboot整合与读写操作
60 0
|
5月前
|
NoSQL Java MongoDB
Spring Boot 整合 MongoDB 实战
本文介绍了如何使用Spring Boot整合MongoDB,实现数据持久化。步骤包括:环境准备(安装Java、MongoDB及创建Spring Boot项目)、在pom.xml中添加MongoDB依赖、配置MongoDB连接信息、创建映射MongoDB集合的实体类、定义MongoDB Repository接口、编写业务逻辑和服务层以及控制器层。通过测试确保整合成功。此实战教程帮助读者理解Spring Boot与MongoDB整合的基础,适用于快速构建Java应用。
641 11
下一篇
无影云桌面