【问题标题】:spring boot multiple mongodb datasourcespring boot 多个mongodb数据源
【发布时间】:2015-03-24 09:27:15
【问题描述】:

我们正在使用 Spring Boot,并且系统中有多个 mongodb。根据 Spring Boot 文档,我们可以在 application.properties 文件中配置“一个”mongodb。现在我们需要写入多个 mongodbs。我们如何配置它?

希望有人可以提供帮助,任何代码示例都会有所帮助。

谢谢 通用汽车

【问题讨论】:

    标签: spring spring-boot spring-data


    【解决方案1】:

    使用多个 @Bean 方法,您可以在其中创建和配置数据源,并指定 bean 名称来区分它们。

    例子:

    @Bean("primary")
    public Mongo primaryMongo() throws UnknownHostException {
        Mongo mongo = new Mongo();
    
        // configure the client ...
    
        return mongo;
    }
    
    @Bean("secondary")
    public Mongo secondaryMongo() throws UnknownHostException {
        Mongo mongo = new Mongo();
    
        // configure the client ...
    
        return mongo;
    }
    

    当你要访问数据源时,使用字段上的@Qualifier注解,用bean名称指定数据源:

    @Autowired
    @Qualifier("primary")
    private Mongo mongo;
    

    【讨论】: