docs 📝 readme中补充多数据源配置指南
This commit is contained in:
		
							
								
								
									
										39
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										39
									
								
								README.md
									
									
									
									
									
								
							@@ -26,4 +26,41 @@
 | 
			
		||||
- Maven3.0+
 | 
			
		||||
- MySQL8.0
 | 
			
		||||
- redis6.0+
 | 
			
		||||
<br>
 | 
			
		||||
<br>
 | 
			
		||||
 | 
			
		||||
## 多数据源配置指南
 | 
			
		||||
1. 在你需要用到多数据源的项目/模块中引入多数据源jar包的maven依赖
 | 
			
		||||
```xml
 | 
			
		||||
<dependency>
 | 
			
		||||
    <groupId>com.cnbm</groupId>
 | 
			
		||||
    <artifactId>ym-dynamic-datasource</artifactId>
 | 
			
		||||
    <version>1.0-SNAPSHOT</version>
 | 
			
		||||
</dependency>
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
2. 配置文件中,配置多数据源,注意必须以`dynamic.datasource`作为前缀,如下(slave1,slave2可以自己随意命名,数据源不限于2个):
 | 
			
		||||
```yml
 | 
			
		||||
dynamic:
 | 
			
		||||
  datasource:
 | 
			
		||||
    slave1:
 | 
			
		||||
      driver-class-name: com.mysql.cj.jdbc.Driver
 | 
			
		||||
      url: jdbc:mysql://localhost:3306/mysql?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&nullCatalogMeansCurrent=true
 | 
			
		||||
      username: xxx
 | 
			
		||||
      password: xxx
 | 
			
		||||
    slave2:
 | 
			
		||||
      driver-class-name: com.mysql.cj.jdbc.Driver
 | 
			
		||||
      url: jdbc:mysql://localhost:3306/myysql?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&nullCatalogMeansCurrent=true
 | 
			
		||||
      username: xxx
 | 
			
		||||
      password: xxx
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
3. 在service实现中,需要指定数据源的方法上面添加注解,比如,在login这个方法调用时,指定用`slave1`这个数据源
 | 
			
		||||
```java
 | 
			
		||||
@DataSource("slave1")
 | 
			
		||||
public Result login(HttpServletRequest request, LoginParam loginParam) {
 | 
			
		||||
        ......
 | 
			
		||||
}
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
4. 验证
 | 
			
		||||
可以在日志中看到类似输出:`set datasource is slave1`
 | 
			
		||||
@@ -52,15 +52,15 @@ spring:
 | 
			
		||||
#        maximum-pool-size: 10
 | 
			
		||||
 | 
			
		||||
##多数据源的配置,需要引用renren-dynamic-datasource
 | 
			
		||||
#dynamic:
 | 
			
		||||
#  datasource:
 | 
			
		||||
#    slave1:
 | 
			
		||||
#      driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
 | 
			
		||||
#      url: jdbc:sqlserver://123456:1433;DatabaseName=renren_security
 | 
			
		||||
#      username: sa
 | 
			
		||||
#      password: 123456
 | 
			
		||||
#    slave2:
 | 
			
		||||
#      driver-class-name: org.postgresql.Driver
 | 
			
		||||
#      url: jdbc:postgresql://123456:5432/renren_security
 | 
			
		||||
#      username: postgres
 | 
			
		||||
#      password: 123456
 | 
			
		||||
dynamic:
 | 
			
		||||
  datasource:
 | 
			
		||||
    slave1:
 | 
			
		||||
      driver-class-name: com.mysql.cj.jdbc.Driver
 | 
			
		||||
      url: jdbc:mysql://mysql.picaiba.com:30307/spc?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&nullCatalogMeansCurrent=true
 | 
			
		||||
      username: root
 | 
			
		||||
      password: 1qaz@WSX3edc$RFV
 | 
			
		||||
    slave2:
 | 
			
		||||
      driver-class-name: com.mysql.cj.jdbc.Driver
 | 
			
		||||
      url: jdbc:mysql://mysql.picaiba.com:30307/spc?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&nullCatalogMeansCurrent=true
 | 
			
		||||
      username: root
 | 
			
		||||
      password: 1qaz@WSX3edc$RFV
 | 
			
		||||
		Reference in New Issue
	
	Block a user