摘要:在日常工作中,我們通過來操作數(shù)據(jù)庫,在中只需要引入即可。當(dāng)在一個(gè)項(xiàng)目中需要連接多個(gè)數(shù)據(jù)庫的時(shí)候,的自動(dòng)配置無法滿足需求,所以我這邊封裝了一個(gè)多數(shù)據(jù)源的。
在日常工作中,我們通過Spring Data Mongodb來操作Mongodb數(shù)據(jù)庫,在Spring Boot中只需要引入spring-boot-starter-data-mongodb即可。
然后配置連接信息如下:
spring.data.mongodb.uri=mongodb://localhost:27017/test
或者
pring.data.mongodb.authentication-database= # Authentication database name. spring.data.mongodb.database=test # Database name. spring.data.mongodb.host=localhost # Mongo server host. spring.data.mongodb.password= # Login password of the mongo server. spring.data.mongodb.port=27017 # Mongo server port. spring.data.mongodb.username= # Login user of the mongo server.
spring-boot-starter-data-mongodb提供了兩種配置方式,分別是uri和host方式。uri可以配置多個(gè)地址,也就是集群的配置方式。host只能連接一個(gè)節(jié)點(diǎn)。
當(dāng)在一個(gè)項(xiàng)目中需要連接多個(gè)數(shù)據(jù)庫的時(shí)候,spring-boot-starter-data-mongodb的自動(dòng)配置無法滿足需求,所以我這邊封裝了一個(gè)多數(shù)據(jù)源的Mongodb spring-boot-starter。
之前關(guān)于多數(shù)據(jù)源的使用寫了篇文章:spring-boot-starter-mongodb-pool
由于是第一個(gè)版本,有些東西沒考慮到,最近更新了下,加了一些內(nèi)容,升級(jí)到Spring Boot 2.0版本。
Github:https://github.com/yinjihuan/...
首先還是簡單的介紹下如何使用:
配置倉庫地址:
jitpack.io https://www.jitpack.io
配置最新版本,只支持Spring Boot 2.0
com.github.yinjihuan spring-boot-starter-mongodb-pool 2.0.2
我這邊配置方式也是uri和host兩種,uri的話是只配置mongo節(jié)點(diǎn)信息,跟默認(rèn)的uri格式不一樣,不包含用戶信息和連接參數(shù)。
URI配置集群spring.data.mongodb.testMongoTemplate.uri=localhost:27017,localhost:27018 spring.data.mongodb.testMongoTemplate.username=yinjihuan spring.data.mongodb.testMongoTemplate.password=123456 spring.data.mongodb.testMongoTemplate.database=test spring.data.mongodb.testMongoTemplate.authenticationDatabase=adminHOST方式配置
spring.data.mongodb.testMongoTemplate.host=localhost spring.data.mongodb.testMongoTemplate.port=27017 spring.data.mongodb.testMongoTemplate.database=test spring.data.mongodb.testMongoTemplate.username=yinjihuan spring.data.mongodb.testMongoTemplate.password=123456
testMongoTemplate就是我們用來操作test數(shù)據(jù)庫的MongoTemplate對(duì)象,框架會(huì)自動(dòng)為你創(chuàng)建好,只需要注入使用就可以了。
@Autowired @Qualifier("testMongoTemplate") private MongoTemplate testMongoTemplate;
多數(shù)據(jù)源就配置多個(gè)MongoTemplate就行了,比如:
spring.data.mongodb.testMongoTemplate.host=localhost spring.data.mongodb.testMongoTemplate.port=27017 spring.data.mongodb.testMongoTemplate.database=test spring.data.mongodb.testMongoTemplate.username=yinjihuan spring.data.mongodb.testMongoTemplate.password=123456 spring.data.mongodb.test2MongoTemplate.host=localhost spring.data.mongodb.test2MongoTemplate.port=27017 spring.data.mongodb.test2MongoTemplate.database=test2 spring.data.mongodb.test2MongoTemplate.username=yinjihuan spring.data.mongodb.test2MongoTemplate.password=123456
操作哪個(gè)數(shù)據(jù)庫就注入哪個(gè)對(duì)象:
@Autowired @Qualifier("testMongoTemplate") private MongoTemplate testMongoTemplate; @Autowired @Qualifier("test2MongoTemplate") private MongoTemplate test2MongoTemplate;更新說明
支持Spring Boot 2.x版本
第一個(gè)版本1.0.0只支持Spring Boot的1.x版本
加上用戶認(rèn)證配置
第一個(gè)版本1.0.0中沒有加賬號(hào)密碼認(rèn)證邏輯
支持集群地址配置
通過uri配置集群信息
想了解框架實(shí)現(xiàn)細(xì)節(jié)的請移步:http://cxytiandi.com/course
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/74299.html
摘要:聲明構(gòu)造函數(shù),作用是把從數(shù)據(jù)庫取出的數(shù)據(jù)實(shí)例化為對(duì)象。該構(gòu)造函數(shù)傳入的值為從中取出的數(shù)據(jù)省略接口提供增刪改查接口實(shí)現(xiàn)提供增刪改查接口實(shí)現(xiàn)提供了一個(gè)類似于的設(shè)計(jì)的類。 本文快速入門,MongoDB 結(jié)合SpringBoot starter-data-mongodb 進(jìn)行增刪改查 1、什么是MongoDB ? MongoDB 是由C++語言編寫的,是一個(gè)基于分布式文件存儲(chǔ)的開源數(shù)據(jù)庫系統(tǒng)。...
摘要:開公眾號(hào)差不多兩年了,有不少原創(chuàng)教程,當(dāng)原創(chuàng)越來越多時(shí),大家搜索起來就很不方便,因此做了一個(gè)索引幫助大家快速找到需要的文章系列處理登錄請求前后端分離一使用完美處理權(quán)限問題前后端分離二使用完美處理權(quán)限問題前后端分離三中密碼加鹽與中異常統(tǒng)一處理 開公眾號(hào)差不多兩年了,有不少原創(chuàng)教程,當(dāng)原創(chuàng)越來越多時(shí),大家搜索起來就很不方便,因此做了一個(gè)索引幫助大家快速找到需要的文章! Spring Boo...
摘要:比如使用的時(shí)候指定使用哪個(gè)環(huán)境的配置在微服務(wù)架構(gòu)下,服務(wù)的數(shù)量會(huì)比之前的單體應(yīng)用多,部署的節(jié)點(diǎn)數(shù)量也會(huì)很多。今天主要是講下在中如何對(duì)接進(jìn)行配置管理。 問題背景 在實(shí)際工作中,我們的開發(fā)環(huán)境,測試環(huán)境,生產(chǎn)環(huán)境對(duì)應(yīng)的 Mysql 數(shù)據(jù)庫,Redis 這些信息都不一樣,每個(gè)環(huán)境都有對(duì)應(yīng)的一套配置,在 Spring Boot 中我們通常會(huì)編寫多個(gè)配置文件,也就是每個(gè)環(huán)境一個(gè)配置文件。 比如:...
摘要:是一個(gè)輕量級(jí)框架,可以完成基于的應(yīng)用程序的大部分配置工作。本文介紹如何使用操作,通過代碼在里插入數(shù)據(jù)。首先按照這個(gè)教程的第一篇文章的介紹,在本地搭建好的環(huán)境最簡單的入門教程之一環(huán)境搭建。 Spring Boot 是一個(gè)輕量級(jí)框架,可以完成基于 Spring 的應(yīng)用程序的大部分配置工作。Spring Boot的目的是提供一組工具,以便快速構(gòu)建容易配置的Spring應(yīng)用程序,省去大量傳統(tǒng)S...
閱讀 2638·2021-11-25 09:43
閱讀 2739·2021-11-04 16:09
閱讀 1656·2021-10-12 10:13
閱讀 890·2021-09-29 09:35
閱讀 891·2021-08-03 14:03
閱讀 1783·2019-08-30 15:55
閱讀 3000·2019-08-28 18:14
閱讀 3502·2019-08-26 13:43