一、配置文件

pom.xml

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-mongodb</artifactId>
</dependency>

application.yml

spring:application:name: double-mongoprofiles:active: devjackson:date-format: yyyy-MM-dd HH:mm:sstime-zone: GMT+8server:port: 8008sys:mongodb:one:uri: mongodb://user01:admin123@192.168.1.2:10135,192.168.1.3:10135/mongo01two:uri: mongodb://user02:admin123@192.168.1.2:10135,192.168.1.3:10135/mongo02

二、配置Configuration Bean

(1)第一个mongodb配置(主)

public class OneMongoConfig {private MongoClient mongo;@Primary//必须设置默认的mongo模板,默认名字必须为mongoTemplate@Bean("mongoTemplate")public MongoTemplate oneMongoTemplate(@Autowired @Qualifier("oneMongoDbFactory")MongoDbFactory mongoDbFactory, MongoConverter converter) {return new MongoTemplate(mongoDbFactory, converter);}@Primary//必须设置默认的mongo工厂@Beanpublic MongoDbFactory oneMongoDbFactory(@Autowired @Qualifier("oneMongoProperties")MongoProperties properties,Environment environment, ObjectProvider<MongoClientOptions> options) {MongoClientOptions _options = options.getIfAvailable();MongoClientFactory mongoClientFactory = new MongoClientFactory(properties, environment);this.mongo = mongoClientFactory.createMongoClient(_options);return new SimpleMongoDbFactory(this.mongo, properties.getMongoClientDatabase());}@PreDestroypublic void close() {if (this.mongo != null) {this.mongo.close();}}@Primary//必须设置默认的mongo配置@Bean@ConfigurationProperties(prefix = "sys.mongodb.one")public MongoProperties oneMongoProperties(){return new MongoProperties();}}

(2)第二个mongo配置


public class TwoMongoConfig {private MongoClient mongo;@Beanpublic MongoTemplate twoMongoTemplate(@Autowired @Qualifier("twoMongoDbFactory")MongoDbFactory mongoDbFactory, MongoConverter converter) {return new MongoTemplate(mongoDbFactory, converter);}@Beanpublic MongoDbFactory twoMongoDbFactory(@Autowired @Qualifier("twoMongoProperties")MongoProperties properties,Environment environment, ObjectProvider<MongoClientOptions> options) {MongoClientOptions _options = options.getIfAvailable();MongoClientFactory mongoClientFactory = new MongoClientFactory(properties, environment);this.mongo = mongoClientFactory.createMongoClient(_options);return new SimpleMongoDbFactory(this.mongo, properties.getMongoClientDatabase());}@PreDestroypublic void close() {if (this.mongo != null) {this.mongo.close();}}@Bean@ConfigurationProperties(prefix = "sys.mongodb.two")public MongoProperties twoMongoProperties(){return new MongoProperties();}}

(3)mongo导入配置

@Configuration
@Import({OneMongoConfig.class, TwoMongoConfig.class})
public class MongoConfig {}

注意:去掉默认自动配置

@SpringBootApplication(exclude = {MongoAutoConfiguration.class})
public class Application {public static void main(String[] args) {SpringApplication.run(Application.class, args);}}

SpringBoot2.1.9 多MongoDB配置自动扫描_茅坤宝骏氹的博客-CSDN博客

SpringBoot2.1.9 多MongoDB配置template相关推荐

  1. SpringBoot2.1.9 多MongoDB配置

    一.配置文件 pom.xml <dependency><groupId>org.springframework.boot</groupId><artifact ...

  2. 聊聊springboot2的embeded container的配置改动

    本文主要研究下springboot2的embeded container的配置改动 springboot 1.x import org.apache.catalina.connector.Connec ...

  3. MongoDB配置副本集(含Arbiter)

    MongoDB配置副本集(含Arbiter) 集群模式为:一主一副一仲裁 安装依赖 yum install net-snmp lsof -yyum install net-snmp -y 配置数据节点 ...

  4. 注解不自动导包_玩转SpringBoot2.X:SpringBoot自动配置原理大揭秘

    我们在使用SpringBoot的时候,是不是觉得特方便,根本不需要我们去配置什么端口号,应用名称,又比如我们再整合redis的时候,其实也不需要我们去指定端口号,IP,都会有默认的.是不是特方便.那么 ...

  5. SpringBoot2.1.5(6)----中文配置指南

    #================================================= ==================  #COMMON SPRING BOOT PROPERTIE ...

  6. springboot2的application.properties 官方配置 说明文件(中文翻译)

    #================================================= ==================  #COMMON SPRING BOOT PROPERTIE ...

  7. mongodb spring 超时时间_spring data mongodb 配置遇到的几个问题

    一. mongodb 2.2版本以上的配置 spring.data.mongodb.uri = mongodb://newlook:newlook@192.168.0.109:27017/admin ...

  8. MED-V桌面虚拟化之二配置Template Server(1)

    在前一篇博客中我们介绍了如何配置MED-V Server,为了让整个实验顺利的进行下去,我们还要搭建Template Server,用于镜像的制作.在这里我采用的是xp,总共要安装三个组件:VPC20 ...

  9. springboot2.5.0 整合 redis 配置详解

    1. pom添加依赖 <!--redis--><dependency><groupId>org.springframework.boot</groupId&g ...

  10. Spring Data之MongoDB配置

    一.重写基类扩展功能 package com.mk.mongodb.repository;import org.springframework.data.mongodb.core.MongoOpera ...

最新文章

  1. OpenCV直线拟合检测
  2. linux raid更换硬盘,linux系统raid1更换故障硬盘处理过程
  3. 有人问我:除了机房工程,你还懂什么?我笑了
  4. 数论初步——同余与模算术
  5. linux io映射,【原创】Linux 文件系统移植全解密以linux-2.6.35内核源码为例说明一下IO静态映射的过程...
  6. mysql中if在oracle怎么用_MySql和Oracle的使用
  7. springboot监控服务器信息,面试官:聊一聊SpringBoot服务监控机制
  8. HDU 1476 Sudoku Killer
  9. MySQL备份shell_shell---mysql备份
  10. mysql dump xtrabackup_MySQL之备份和恢复(msyqldump、LVM、xtrabackup)
  11. Django ORM models操作
  12. 6. CSS 属性选择器
  13. 内存模型以及分区,需要详细到每个区放什么
  14. linux安装iscsi设备,linux系统下安装配置iSCSI教程
  15. SpringBoot+vue实现前后端分离的校园志愿者管理系统
  16. 攻防世界 MISC 新手练习区 writeup 001-006
  17. mysql:列类型之时间日期
  18. 点到超平面距离的原理推导
  19. 软件接口测试工具篇(一)
  20. 阿里新突破!自主创新的下一代匹配推荐技术:任意深度学习+树状全库检索

热门文章

  1. android 蒙版控件,Android开发UI之给ImageView添加蒙版
  2. 苹果真伪查询_二手MacBook Pro Air等苹果笔记本验货 鉴定 基本方法 流程
  3. Firefox,IE5,IE6,IE5.5等浏览器兼容性解决方法
  4. 扫雷网站推荐及游戏攻略
  5. Spring validation框架简介
  6. iPhone越狱后恢复
  7. 宇视警戒球人形检测告警配置
  8. 计算机页面里的坚果云删不了怎么回事,坚果云 常见问题
  9. android 仿新浪微博转发 评论悬浮框的功能
  10. Flink StreamingFileSink 文件到hdfs 文件一直处于inprogress状态无法生成正式文件