1.引入依賴
<dependency> <groupId>io.shardingjdbc</groupId> <artifactId>sharding-jdbc-core</artifactId> <version>2.0.3</version> </dependency>
2.在src/main/resources中添加配置文件sharding-jdbc.yml
dataSources: db_master: !!com.zaxxer.hikari.HikariDataSource driverClassName: com.mysql.jdbc.Driver jdbcUrl: jdbc:mysql://192.168.31.128:3307/gmall_pms?useUnicode=true&characterEncoding=utf-8&useSSL=false username: root password: root db_slave1: !!com.zaxxer.hikari.HikariDataSource driverClassName: com.mysql.jdbc.Driver jdbcUrl: jdbc:mysql://192.168.31.128:3316/gmall_pms?useUnicode=true&characterEncoding=utf-8&useSSL=false username: root password: root db_slave2: !!com.zaxxer.hikari.HikariDataSource driverClassName: com.mysql.jdbc.Driver jdbcUrl: jdbc:mysql://192.168.31.128:3317/gmall_pms?useUnicode=true&characterEncoding=utf-8&useSSL=false username: root password: root masterSlaveRule: name: db_ms masterDataSourceName: db_master slaveDataSourceNames: [db_slave1,db_slave2] ###注意,這份文檔直接從官網復制的。!!后面是DataSource的實現類全類名不能省略。 ###多個slave加多份db_slaveXX配置即可,在slaveDataSourceNames列舉這些slaver
3.添加數據源配置類
/** * 這是一個配置類 * * SpringBoot引入某個場景,這個場景的組件就會自動配置好。 * 1)、 */ @Configuration public class PmsDataSourceConfig { @Bean public DataSource dataSource() throws IOException, SQLException { File file = ResourceUtils.getFile("classpath:sharding-jdbc.yml"); DataSource dataSource = MasterSlaveDataSourceFactory.createDataSource(file); return dataSource; } }