MongoDB 介绍及基本操作、SpringBoot 整合 MongoDB

MongoDB 介绍及基本操作、SpringBoot 整合 MongoDB

+ MongoDB 介绍及基本操作

- MongoDB 介绍:
  • MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。它支持的数据结构非常松散,是类似json的bson格式,因此可以存储比较复杂的数据类型。Mongo最大的特点是它支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。
- 安装使用MongoDB:
  • 下载:
    https://downloads.mongodb.com/windows/mongodb-windows-x86_64-enterprise-5.0.9.zip
  • 下载完成后解压,在 bin 同级别目录下创建 data/db 目录,在 bin 目录下启动 mongodb 数据库,并设置数据存储在 data/db 目录下:
    在这里插入图片描述
- 使用 idea 连接 MongoDB:

在这里插入图片描述
在这里插入图片描述

  • 展示所有的数据库信息:
    在这里插入图片描述
  • 通过命令创建数据库和集合:
    在这里插入图片描述
    在这里插入图片描述
  • 等待执行完成:
    在这里插入图片描述
  • 添加数据(文档):
db.book.insertOne({
   
   "name": "springboot从入门到精通"});
db.book.insertOne({
   
   "name": "springcloud从入门到精通",
    "description": "这是一本springcloud从入门到精通的书"});
  • 查询文档:
-- 无条件查询文档
db.getCollection("book").find({});
-- 简写形式为:db.book.find();

在这里插入图片描述

  • 带条件查询文档:

在这里插入图片描述

  • 其他带查询条件的方法如下:
    在这里插入图片描述

  • 删除文档:
    在这里插入图片描述

  • 修改文档:
    在这里插入图片描述
    在这里插入图片描述

+ SpringBoot 整合 MongoDB:

- pom.xml导入相关依赖:
<dependency>
  <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-mongodb</artifactId>
</dependency>

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-test</artifactId>
    <scope>test</scope>
</dependency>
- yml配置:
spring:
  data:
    mongodb:
      uri: mongodb://localhost/mongo_test
- 测试类示例代码:
import com.example.springboot_mongodb.entity.Book;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.autoconfigure.core.AutoConfigureCache;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.data.mongodb.core.query.Query;

import java.util.List;

@SpringBootTest
class SpringbootMongodbApplicationTests {
    
    

    @Autowired
    private MongoTemplate mongoTemplate;

    @Test
    void save() {
    
    

        Book book = new Book("2", "java", "从入门到精通", 35.00F);
        mongoTemplate.save(book);

    }

    @Test
    void find(){
    
    
        List<Book> books = mongoTemplate.findAll(Book.class);
        System.out.println(books);
        //执行结果为:[Book(id=62dcde20428b155b3684a533, name=springboot2从入门到精通, description=null, price=null), Book(id=2, name=java, description=从入门到精通, price=35.0)]

    }

}

  • save() 方法执行结果为:
    在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_38132105/article/details/125958129