第一步:配置多数据源
Spring Boot 基础就不介绍了,推荐下这个实战教程: github.com/javastacks/…
首先,我们在 SpringBoot 中配置两个数据源,其中第二个数据源是ro-datasource
:
spring:
datasource:
jdbc-url: jdbc:mysql://localhost/test
username: rw
password: rw_password
driver-class-name: com.mysql.jdbc.Driver
hikari:
pool-name: HikariCP
auto-commit: false
...
ro-datasource:
jdbc-url: jdbc:mysql://localhost/test
username: ro
password: ro_password
driver-class-name: com.mysql.jdbc.Driver
hikari:
pool-name: HikariCP
auto-commit: false
...
复制代码
在开发环境下,没有必要配置主从数据库。只需要给数据库设置两个用户,一个rw
具有读写权限,一个ro
只有 SELECT 权限,这样就模拟了生产环境下对主从数据库的读写分离。
在 SpringBoot 的配置代码中,我们初始化两个数据源:
@SpringBootApplication
public class MySpringBootApplication {
/**
* Master data source.
*/
@Bean("masterDataSource")
@ConfigurationProperties(prefix = "spring.datasource")
DataSourc