• 【Java系列】SpringBoot 集成MongoDB 详细介绍


    目录

    写在前面

    一、步骤介绍

    步骤 1: 添加 MongoDB 依赖

    步骤 2: 配置 MongoDB 连接信息

    步骤 3: 创建实体类

    步骤 4: 创建 Repository 接口

    步骤 5: 使用 Repository 进行操作

    二、特殊处理


    写在前面

    在Spring Boot中集成MongoDB的过程相对简单,以下是一个基本的步骤指南。确保项目已经使用了Spring Boot,并且你已经在项目中添加了MongoDB的依赖。

    一、步骤介绍

    步骤 1: 添加 MongoDB 依赖

    在 pom.xml 文件中,添加 MongoDB 的依赖。可以在 Maven 或 Gradle 中选择一种方式。

    1. <dependencies>
    2. <!-- 其他依赖 -->
    3. <dependency>
    4. <groupId>org.springframework.boot</groupId>
    5. <artifactId>spring-boot-starter-data-mongodb</artifactId>
    6. </dependency>
    7. </dependencies>
    1. dependencies {
    2. // 其他依赖
    3. implementation 'org.springframework.boot:spring-boot-starter-data-mongodb'
    4. }

    步骤 2: 配置 MongoDB 连接信息

    application.propertiesapplication.yml 中添加 MongoDB 连接信息:

    1. spring.data.mongodb.host=localhost
    2. spring.data.mongodb.port=27017
    3. spring.data.mongodb.database=mydatabase

    yml格式:

    1. spring:
    2. data:
    3. mongodb:
    4. host: localhost
    5. port: 27017
    6. database: mydatabase

    步骤 3: 创建实体类

    创建一个简单的实体类,用于映射到 MongoDB 中的文档。例如:

    1. import org.springframework.data.annotation.Id;
    2. import org.springframework.data.mongodb.core.mapping.Document;
    3. @Document(collection = "users")
    4. public class User {
    5. @Id
    6. private String id;
    7. private String username;
    8. private String email;
    9. // 省略构造函数、getter和setter等
    10. }

    步骤 4: 创建 Repository 接口

    创建一个继承自 MongoRepository 的接口,用于对 MongoDB 中的文档进行操作。例如:

    1. import org.springframework.data.mongodb.repository.MongoRepository;
    2. public interface UserRepository extends MongoRepository {
    3. // 可以在这里定义一些自定义的查询方法
    4. }

    步骤 5: 使用 Repository 进行操作

    在服务层或控制器中注入 UserRepository,然后可以使用该接口提供的方法来进行数据库操作。例如:

    1. import org.springframework.beans.factory.annotation.Autowired;
    2. import org.springframework.stereotype.Service;
    3. @Service
    4. public class UserService {
    5. private final UserRepository userRepository;
    6. @Autowired
    7. public UserService(UserRepository userRepository) {
    8. this.userRepository = userRepository;
    9. }
    10. public void saveUser(User user) {
    11. userRepository.save(user);
    12. }
    13. public User getUserById(String id) {
    14. return userRepository.findById(id).orElse(null);
    15. }
    16. // 其他操作...
    17. }

    以上步骤涵盖了基本的集成。可以根据项目的需要进行更复杂的配置和操作,例如定义索引、复杂查询等。

    二、特殊处理

    在使用spring-boot-starter-data-mongodb时,不需要显式指定spring-data-mongodb的版本,Spring Boot会确保它们兼容并自动管理版本冲突。

    如果你正在使用一个不是最新的Spring Boot版本,你可能需要查看相应版本的文档或POM文件,以确保你使用的spring-boot-starter-data-mongodb版本与spring-data-mongodb版本兼容。

     

    但是,有时候需要单独指定MongoDB的版本,你可以在pom.xml文件中添加相应的依赖项,并指定版本号。以下是一个示例:

    1. org.springframework.boot
    2. spring-boot-starter-data-mongodb
    3. 2.7.0
    4. org.springframework.data
    5. spring-data-mongodb
    6. 3.4.1

  • 相关阅读:
    前端工程师的20道react面试题自检
    【夜读】影响一生的五大定律
    ElasticSearch 数据备份与恢复
    199道SpringCloud面试题,你能答上来吗
    HTML5期末大作业:基于HTML+CSS+JavaScript仿蘑菇街购物商城设计毕业论文源码
    Python 潮流周刊#24:no-GIL 提案正式被采纳了!
    Flask笔记一之项目搭建、配置项导入
    Android Launcher3简介
    QT事件及处理
    由 BigDecimal 舍入算法引发的血案:ROUND_HALF_UP 与 ROUND_UP
  • 原文地址:https://blog.csdn.net/weixin_36755535/article/details/134530333