SpringBoot2.1.9 多MongoDB配置template
一、配置文件
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相关推荐
- SpringBoot2.1.9 多MongoDB配置
一.配置文件 pom.xml <dependency><groupId>org.springframework.boot</groupId><artifact ...
- 聊聊springboot2的embeded container的配置改动
本文主要研究下springboot2的embeded container的配置改动 springboot 1.x import org.apache.catalina.connector.Connec ...
- MongoDB配置副本集(含Arbiter)
MongoDB配置副本集(含Arbiter) 集群模式为:一主一副一仲裁 安装依赖 yum install net-snmp lsof -yyum install net-snmp -y 配置数据节点 ...
- 注解不自动导包_玩转SpringBoot2.X:SpringBoot自动配置原理大揭秘
我们在使用SpringBoot的时候,是不是觉得特方便,根本不需要我们去配置什么端口号,应用名称,又比如我们再整合redis的时候,其实也不需要我们去指定端口号,IP,都会有默认的.是不是特方便.那么 ...
- SpringBoot2.1.5(6)----中文配置指南
#================================================= ================== #COMMON SPRING BOOT PROPERTIE ...
- springboot2的application.properties 官方配置 说明文件(中文翻译)
#================================================= ================== #COMMON SPRING BOOT PROPERTIE ...
- mongodb spring 超时时间_spring data mongodb 配置遇到的几个问题
一. mongodb 2.2版本以上的配置 spring.data.mongodb.uri = mongodb://newlook:newlook@192.168.0.109:27017/admin ...
- MED-V桌面虚拟化之二配置Template Server(1)
在前一篇博客中我们介绍了如何配置MED-V Server,为了让整个实验顺利的进行下去,我们还要搭建Template Server,用于镜像的制作.在这里我采用的是xp,总共要安装三个组件:VPC20 ...
- springboot2.5.0 整合 redis 配置详解
1. pom添加依赖 <!--redis--><dependency><groupId>org.springframework.boot</groupId&g ...
- Spring Data之MongoDB配置
一.重写基类扩展功能 package com.mk.mongodb.repository;import org.springframework.data.mongodb.core.MongoOpera ...
最新文章
- OpenCV直线拟合检测
- linux raid更换硬盘,linux系统raid1更换故障硬盘处理过程
- 有人问我:除了机房工程,你还懂什么?我笑了
- 数论初步——同余与模算术
- linux io映射,【原创】Linux 文件系统移植全解密以linux-2.6.35内核源码为例说明一下IO静态映射的过程...
- mysql中if在oracle怎么用_MySql和Oracle的使用
- springboot监控服务器信息,面试官:聊一聊SpringBoot服务监控机制
- HDU 1476 Sudoku Killer
- MySQL备份shell_shell---mysql备份
- mysql dump xtrabackup_MySQL之备份和恢复(msyqldump、LVM、xtrabackup)
- Django ORM models操作
- 6. CSS 属性选择器
- 内存模型以及分区,需要详细到每个区放什么
- linux安装iscsi设备,linux系统下安装配置iSCSI教程
- SpringBoot+vue实现前后端分离的校园志愿者管理系统
- 攻防世界 MISC 新手练习区 writeup 001-006
- mysql:列类型之时间日期
- 点到超平面距离的原理推导
- 软件接口测试工具篇(一)
- 阿里新突破!自主创新的下一代匹配推荐技术:任意深度学习+树状全库检索
热门文章
- android 蒙版控件,Android开发UI之给ImageView添加蒙版
- 苹果真伪查询_二手MacBook Pro Air等苹果笔记本验货 鉴定 基本方法 流程
- Firefox,IE5,IE6,IE5.5等浏览器兼容性解决方法
- 扫雷网站推荐及游戏攻略
- Spring validation框架简介
- iPhone越狱后恢复
- 宇视警戒球人形检测告警配置
- 计算机页面里的坚果云删不了怎么回事,坚果云 常见问题
- android 仿新浪微博转发 评论悬浮框的功能
- Flink StreamingFileSink 文件到hdfs 文件一直处于inprogress状态无法生成正式文件