『壹』 java mybatis框架外連接資料庫在哪裡配置
資料庫的配置信息是在properties裡面,我給你看看我的吧,包括資料庫的IP,埠,用戶名和密碼,還有資料庫名等等
『貳』 spring+ mybatis怎麼配置自帶的資料庫連接池
造一個db.properties如下配置
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/db?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull
jdbc.username=root
jdbc.password=root
在spring配置中讀取
<!-- 配置數據源,使用dbcp連接池 -->
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="${jdbc.driver}"/>
<property name="url" value="${jdbc.url}"/>
<property name="username" value="${jdbc.username}"/>
<property name="password" value="${jdbc.password}"/>
<property name="maxActive" value="30"/>
<property name="maxIdle" value="5"/>
</bean>
用 spring管理線程池,mybits的各種映射也用spring讀取管理就好
『叄』 SpringBoot整合MyBatisPlus配置動態數據源
MybatisPlus特性
快速開始
初始化測試數據表:
父工程依賴
該工程用於依賴管理,pom如下:
創建MyBaitsPlus工程
依賴如下:
properties配置
在這里配置資料庫連接,以及數據連接池與mybatisplus的配置等
常規增刪改查實現
創建實體類:
該lombok插件省去getset方法。
創建UserMapper介面,並且實現BaseMapper<User>這里我們指定實體類為user可直接使用介面中的方法。
UserMapper.xml,如下:
執行SQL:
在SpringBoot中使用MybatisPlus分頁需要注入Bean,並且在啟動類上使用@MapperScan("com.simple.spring.boot.mapper")掃描mapper文件路徑如下:
使用MyBatisPlus可以為我們減少很多很多的代碼,不過需要編寫實體類,有失必有得。
配置動態數據源
dynamic-datasource-spring-boot-starter 是一個基於springboot的快速集成多數據源的啟動器。
優勢
網上關於動態數據源的切換的文檔有很多,核心只有兩種。
如果你的數據源較少,場景不復雜,選擇以上任意一種都可以。如果你需要更多特性,請嘗試本動態數據源。
劣勢
不能使用多數據源事務(同一個數據源下能使用事務),網上其他方案也都不能提供。
如果你需要使用到分布式事務,那麼你的架構應該到了微服務化的時候了。
如果呼聲強烈,項目達到800 star,作者考慮集成分布式事務。
PS: 如果您只是幾個資料庫但是有強烈的需求分布式事務,建議還是使用傳統方式自己構建多套環境集成atomic這類,網上網路很多。
約定
建議
強烈建議在 主從模式 下遵循普遍的規則,以便他人能更輕易理解你的代碼。
主資料庫 建議 只執行 INSERT UPDATE DELETE 操作。
從資料庫 建議 只執行 SELECT 操作。
快速開始
加入依賴:
注釋掉原來的資料庫配置,加入:
使用 @DS 切換數據源。
@DS 可以註解在方法上和類上, 同時存在方法註解優先於類上註解 。
註解在service實現或mapper介面方法上,但強烈不建議同時在service和mapper註解。 (可能會有問題)
如果不加入主鍵則使用默認數據源。
DruidDataSourceAutoConfigure會注入一個DataSourceWrapper,其會在原生的spring.datasource下找url,username,password等。而我們動態數據源的配置路徑是變化的,所以需要排除:
或者在類上排除:
然後更換properties配置信息:
本篇代碼案例地址:
https://github.com/450255266/open-doubi
作者:SimpleWu
出處:https://www.cnblogs.com/SimpleWu/p/10930388.html