shardingsphere整合分表操作
shardingsphere整合分表操作
项目整合
1.添加依赖
<!-- 数据库分库分表 的依赖配置 start-->
<dependency>
<groupId>org.apache.shardingsphere</groupId>
<artifactId>sharding-jdbc-spring-boot-starter</artifactId>
<version>4.1.1</version>
</dependency>
<!-- MYSQL数据库 的依赖配置 end-->
2.添加分表配置
#spring配置
spring:
#分库分表
shardingsphere:
datasource:
names: ds0
#客户数据库
ds0:
driver-class-name: com.mysql.jdbc.Driver
#druid数据库连接池配置 url
url: jdbc:mysql://10.249.2.163:3306/agentwapcustomers?useUnicode=true&characterEncoding=UTF-8&useSSL=false
#HiKariCP数据库连接池配置 jdbc-url
# jdbc-url: jdbc:mysql://10.249.2.163:3306/agentwapcustomers?useUnicode=true&characterEncoding=UTF-8&useSSL=false
password: M@EeO3m2
type: com.alibaba.druid.pool.DruidDataSource
username: root
sharding:
tables:
dw_cust_info:
actual-data-nodes: ds0.dw_cust_info$->{0..1}
key-generator:
column: id
type: SNOWFLAKE
table-strategy:
inline:
algorithm-expression: dw_cust_info$->{id % 2}
sharding-column: id
#使用自定义类进行分表策略
# standard:
# sharding-column: create_date
# precise-algorithm-class-name: com.allianity.utils.ShardingAlgorithm
3.去除自动配置
@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class,
DruidDataSourceAutoConfigure.class})
注意点:
如果使用了PageHelper分页功能需要排除分页自动配置PageHelperAutoConfiguration.class
@SpringBootApplication(exclude = {DruidDataSourceAutoConfigure.class,
DataSourceAutoConfiguration.class, PageHelperAutoConfiguration.class})

浙公网安备 33010602011771号