Java輕量級類隔離框架 SOFAArk Project v2.3.0
42.5MB / 01-19
SpringBlade微服務開發(fā)平臺 v4.4.0
197KB / 01-30
Diboot輕代碼開發(fā)平臺 v2.11.0
1.3MB / 07-20
RuoYi-activiti工作流平臺源碼 v4.1
24.79MB / 07-19
RuoYi若依權限管理系統(tǒng) v4.7.9
4.12MB / 06-28
Java Struts2漏洞復現(xiàn)工具
98KB / 06-26
java操作excel的jar包(jxl.jar包 源碼)
610KB / 06-26
springboot整合QuartJob實現(xiàn)定時器實時管理源代碼
29KB / 06-26
SOFABoot開源框架 v3.24.0
587KB / 08-31
基于SSM的應急資源管理系統(tǒng)源碼 v1.0
80.7MB / 05-25
-
Pinpoint應用性能管理工具 v3.0.2 java源碼 / 18.8MB
-
Presto大數(shù)據(jù)查詢引擎 v0.292 java源碼 / 10.89MB
-
Spring Boot應用開發(fā)框架 v3.4.4 java源碼 / 5.6MB
-
Spring Boot應用開發(fā)框架 v3.3.10 java源碼 / 6.0MB
-
Zotero文獻管理工具 v7.0.15 java源碼 / 6.8MB
-
Logstash日志管理系統(tǒng) v8.17.4 java源碼 / 18.9MB
-
Mybatis增強工具包(Mybatis plus) v3.5.11 java源碼 / 8.35MB
-
Mall4j商城系統(tǒng) v3.4 java源碼 / 14.2MB
-
Exchangis輕量級數(shù)據(jù)交換平臺 v1.1.7 java源碼 / 14.2MB
-
ReactNative移動開發(fā)工具 v0.78.1 java源碼 / 12.3MB
詳情介紹
dynamic-datasource-spring-boot-starter 是一個基于springboot的快速集成多數(shù)據(jù)源的啟動器。
其支持 Jdk 1.7+, SpringBoot 1.4.x 1.5.x 2.x.x。
特性
1、支持 數(shù)據(jù)源分組 ,適用于多種場景 純粹多庫 讀寫分離 一主多從 混合模式。
2、支持數(shù)據(jù)庫敏感配置信息 加密(可自定義) ENC()。
3、支持每個數(shù)據(jù)庫獨立初始化表結構schema和數(shù)據(jù)庫database。
4、支持無數(shù)據(jù)源啟動,支持懶加載數(shù)據(jù)源(需要的時候再創(chuàng)建連接)。
5、支持 自定義注解 ,需繼承DS(3.2.0+)。
6、提供并簡化對Druid,HikariCp,BeeCp,Dbcp2的快速集成。
7、提供對Mybatis-Plus,Quartz,ShardingJdbc,P6sy,Jndi等組件的集成方案。
8、提供 自定義數(shù)據(jù)源來源 方案(如全從數(shù)據(jù)庫加載)。
9、提供項目啟動后 動態(tài)增加移除數(shù)據(jù)源 方案。
10、提供Mybatis環(huán)境下的 純讀寫分離 方案。
11、提供使用 spel動態(tài)參數(shù) 解析數(shù)據(jù)源方案。內(nèi)置spel,session,header,支持自定義。
12、支持 多層數(shù)據(jù)源嵌套切換 。(ServiceA >>> ServiceB >>> ServiceC)。
13、提供 基于seata的分布式事務方案 。
14、提供 本地多數(shù)據(jù)源事務方案。
約定
1、本框架只做 切換數(shù)據(jù)源 這件核心的事情,并不限制你的具體操作,切換了數(shù)據(jù)源可以做任何CRUD。2、配置數(shù)據(jù)源。
2、配置文件所有以下劃線 _ 分割的數(shù)據(jù)源 首部 即為組的名稱,相同組名稱的數(shù)據(jù)源會放在一個組下。
3、切換數(shù)據(jù)源可以是組名,也可以是具體數(shù)據(jù)源名稱。組名則切換時采用負載均衡算法切換。
4、默認的數(shù)據(jù)源名稱為 master ,你可以通過 spring.datasource.dynamic.primary 修改。
5、方法上的注解優(yōu)先于類上注解。
6、DS支持繼承抽象類上的DS,暫不支持繼承接口上的DS。
使用方法
1、引入dynamic-datasource-spring-boot-starter。
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>dynamic-datasource-spring-boot-starter</artifactId>
<version>${version}</version>
</dependency>
2、配置數(shù)據(jù)源。
spring:
datasource:
dynamic:
primary: master #設置默認的數(shù)據(jù)源或者數(shù)據(jù)源組,默認值即為master
strict: false #嚴格匹配數(shù)據(jù)源,默認false. true未匹配到指定數(shù)據(jù)源時拋異常,false使用默認數(shù)據(jù)源
datasource:
master:
url: jdbc:mysql://xx.xx.xx.xx:3306/dynamic
username: root
password: 123456
driver-class-name: com.mysql.jdbc.Driver # 3.2.0開始支持SPI可省略此配置
slave_1:
url: jdbc:mysql://xx.xx.xx.xx:3307/dynamic
username: root
password: 123456
driver-class-name: com.mysql.jdbc.Driver
slave_2:
url: ENC(xxxxx) # 內(nèi)置加密,使用請查看詳細文檔
username: ENC(xxxxx)
password: ENC(xxxxx)
driver-class-name: com.mysql.jdbc.Driver
#......省略
#以上會配置一個默認庫master,一個組slave下有兩個子庫slave_1,slave_2
# 多主多從 純粹多庫(記得設置primary) 混合配置
spring: spring: spring:
datasource: datasource: datasource:
dynamic: dynamic: dynamic:
datasource: datasource: datasource:
master_1: mysql: master:
master_2: oracle: slave_1:
slave_1: sqlserver: slave_2:
slave_2: postgresql: oracle_1:
slave_3: h2: oracle_2:
3、使用 @DS 切換數(shù)據(jù)源。
@DS 可以注解在方法上或類上,同時存在就近原則 方法上注解 優(yōu)先于 類上注解。
@Service
@DS("slave")
public class UserServiceImpl implements UserService {@Autowired
private JdbcTemplate jdbcTemplate;public List selectAll() {
return jdbcTemplate.queryForList("select * from user");
}
@Override
@DS("slave_1")
public List selectByCondition() {
return jdbcTemplate.queryForList("select * from user where age >10");
}
}
下載地址
人氣源碼
若依后臺管理系統(tǒng) RuoYi v4.7.8
CryptoJS加密庫(crypto.js) v4.2.0
JetLinks開源物聯(lián)網(wǎng)平臺源碼 v2.2.0
Jeepay開源支付系統(tǒng) v2.4.0
JSH_ERP 開源版J2EE進銷存系統(tǒng)代碼源碼 v1.0.2
QQ 聊天機器人小薇(XiaoV) v2.2.2
ECharts JavaScript圖表庫 v5.6.0
因酷時代(inxedu)在線教育系統(tǒng) V2.0.6
Javashop B2C開源電商系統(tǒng) v6.3.2
iBizEAM開源設備資產(chǎn)管理系統(tǒng)源碼 v1.0
相關文章
-
Java輕量級類隔離框架 SOFAArk Project v2.3.0
SOFAArk 是一款基于 Java 實現(xiàn)的動態(tài)熱部署和輕量級類隔離框架,由螞蟻集團開源貢獻,主要提供應用模塊的動態(tài)熱部署和類隔離能力。歡迎需要的朋友下載使用...
-
SpringBlade微服務開發(fā)平臺 v4.4.0
SpringBlade 是一個由商業(yè)級項目升級優(yōu)化而來的SpringCloud分布式微服務架構、SpringBoot單體式微服務架構并存的綜合型項目,采用Java8 API重構了業(yè)務代碼,完全遵循阿里巴...
-
Diboot輕代碼開發(fā)平臺 v2.11.0
Diboot輕代碼開發(fā)平臺是一個面向開發(fā)人員的低代碼開發(fā)平臺,將重復性的工作自動化,提高質(zhì)量、效率、可維護性...
-
RuoYi-activiti工作流平臺源碼 v4.1
RuoYi-activiti是一款以若依開源權限管理系統(tǒng)為基礎開發(fā)平臺并集成了activiti框架完成的工作流系統(tǒng),旨在打造集流程設計、流程部署、流程執(zhí)行、任務辦理、流程監(jiān)控于一體的...
-
RuoYi若依權限管理系統(tǒng) v4.7.9
RuoYi若依權限管理系統(tǒng)是一個基于SpringBoot的權限管理系統(tǒng),代碼易讀易懂、界面簡潔美觀, 核心技術采用Spring、MyBatis、Shiro沒有任何其它重度依賴,喜歡的朋友快來下載...
-
Java Struts2漏洞復現(xiàn)工具
今天給大家分享Java Struts2漏洞復現(xiàn)工具,喜歡的朋友快來下載體驗吧...
-
java操作excel的jar包(jxl.jar包 源碼)
jxl.jar是通過java操作excel表格的工具類庫,能夠修飾單元格屬性,是由java語言開發(fā)而成的,接下來通過本文給大家介紹java操作excel的jar包(jxl.jar包 源碼),喜歡的朋友快...
-
springboot整合QuartJob實現(xiàn)定時器實時管理源代碼
Quartz是一個完全由java編寫的開源作業(yè)調(diào)度框架,形式簡易,功能強大,,下面給大家分享springboot整合QuartJob實現(xiàn)定時器實時管理源代碼,感興趣的朋友快來下載體驗吧...
-
SOFABoot開源框架 v3.24.0
SOFABoot 是螞蟻集團開源的基于 Spring Boot 的研發(fā)框架,它在 Spring Boot 的基礎上,提供了諸如 Readiness Check,上下文隔離,類隔離,日志空間隔離等等能力...
-
基于SSM的應急資源管理系統(tǒng)源碼 v1.0
應急資源管理系統(tǒng)用的是是比較流行的SSM和前端JSP技術,用它來創(chuàng)建使用腳本語言,結合HTML代碼來制作動態(tài) 網(wǎng)頁,歡迎需要的朋友下載使用...
下載聲明
☉ 解壓密碼:www.dbjr.com.cn 就是本站主域名,希望大家看清楚,[ 分享碼的獲取方法 ]可以參考這篇文章
☉ 推薦使用 [ 迅雷 ] 下載,使用 [ WinRAR v5 ] 以上版本解壓本站軟件。
☉ 如果這個軟件總是不能下載的請在評論中留言,我們會盡快修復,謝謝!
☉ 下載本站資源,如果服務器暫不能下載請過一段時間重試!或者多試試幾個下載地址
☉ 如果遇到什么問題,請評論留言,我們定會解決問題,謝謝大家支持!
☉ 本站提供的一些商業(yè)軟件是供學習研究之用,如用于商業(yè)用途,請購買正版。
☉ 本站提供的dynamic datasource 多數(shù)據(jù)源啟動器 v4.3.1資源來源互聯(lián)網(wǎng),版權歸該下載資源的合法擁有者所有。