You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Spring Boot 2.3.4.RELEASE下MongoTemplate Bean配置方案咨询

Spring Boot 2.3.4.RELEASE 配置MongoTemplate Bean的正确方式

简化版配置(直接用连接字符串)

如果不需要复杂的MongoClient配置,直接通过连接字符串构建数据库工厂即可,代码如下:

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.data.mongodb.core.SimpleMongoClientDatabaseFactory;

@Configuration
public class MongoConfig {

    @Bean
    public SimpleMongoClientDatabaseFactory mongoDatabaseFactory() {
        // 连接字符串格式:mongodb://[用户名:密码@]主机:端口/数据库名
        return new SimpleMongoClientDatabaseFactory("mongodb://localhost:27017/MGXPI413");
    }

    @Bean
    public MongoTemplate mongoTemplate() {
        return new MongoTemplate(mongoDatabaseFactory());
    }
}

自定义MongoClient版配置(适合需要连接池、认证等复杂配置的场景)

如果需要对MongoClient做更多自定义配置(比如连接池大小、超时时间、认证参数等),可以单独创建MongoClient Bean:

import com.mongodb.client.MongoClient;
import com.mongodb.client.MongoClients;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.data.mongodb.core.SimpleMongoClientDatabaseFactory;

@Configuration
public class MongoConfig {

    @Bean
    public MongoClient mongoClient() {
        // 这里可以通过MongoClientSettings构建更复杂的配置
        return MongoClients.create("mongodb://localhost:27017");
    }

    @Bean
    public SimpleMongoClientDatabaseFactory mongoDatabaseFactory(MongoClient mongoClient) {
        return new SimpleMongoClientDatabaseFactory(mongoClient, "MGXPI413");
    }

    @Bean
    public MongoTemplate mongoTemplate(SimpleMongoClientDatabaseFactory mongoDatabaseFactory) {
        return new MongoTemplate(mongoDatabaseFactory);
    }
}

关键说明

  • 废弃的SimpleMongoDbFactory已被SimpleMongoClientDatabaseFactory替代,后者是Spring Data MongoDB 2.x及以上版本的推荐实现
  • 避免使用MongoClientURI,直接传入字符串格式的连接字符串更符合新版本的API设计
  • 确保项目已引入Spring Data MongoDB依赖,Maven依赖配置如下:
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-mongodb</artifactId>
</dependency>

内容的提问来源于stack exchange,提问作者Chinmay Chikode

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 04:39:34