ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Spring boot 整合 SardingSphere (多表(分))

2021-12-26 20:34:55  阅读:187  来源: 互联网

标签:tables 多表 Spring shardingsphere sharding datasource spring SardingSphere user


废话不多说,差别在配置文件上

文章源码:https://gitee.com/yihong-sword/learn_shardingsphere

Tips:

  1. 只是将原本s_user的分表配置给copy将表名替换
  2. 其他源码,就不一一copy到这篇文章,参考:https://www.cnblogs.com/yi1036943655/p/15700170.html

application.properties

# 应用名称
spring.application.name=learn_shardingsphere
# 应用服务 WEB 访问端口
server.port=8085

# 数据源 sharding01 sharding02
spring.shardingsphere.datasource.names=sharding0,sharding1

# 第一个数据库
spring.shardingsphere.datasource.sharding0.type=com.zaxxer.hikari.HikariDataSource
spring.shardingsphere.datasource.sharding0.driver-class-name=com.mysql.cj.jdbc.Driver
spring.shardingsphere.datasource.sharding0.jdbc-url=jdbc:mysql://localhost:3306/sharding0?serverTimezone=GMT%2B8&useSSL=false
spring.shardingsphere.datasource.sharding0.username=root
spring.shardingsphere.datasource.sharding0.password=yihongjian

# 第二个数据库
spring.shardingsphere.datasource.sharding1.type=com.zaxxer.hikari.HikariDataSource
spring.shardingsphere.datasource.sharding1.driver-class-name=com.mysql.cj.jdbc.Driver
spring.shardingsphere.datasource.sharding1.jdbc-url=jdbc:mysql://localhost:3306/sharding1?serverTimezone=GMT%2B8&useSSL=false
spring.shardingsphere.datasource.sharding1.username=root
spring.shardingsphere.datasource.sharding1.password=yihongjian

spring.shardingsphere.

# 水平拆分的数据库(表) 配置分库 + 分表策略 行表达式分片策略
# 分库策略
spring.shardingsphere.sharding.default-database-strategy.inline.sharding-column=id
spring.shardingsphere.sharding.default-database-strategy.inline.algorithm-expression=sharding$->{id % 2}

# 分表策略 其中 s_user 为逻辑表 分表主要取决于s_user.id的行
spring.shardingsphere.sharding.tables.s_user.actual-data-nodes=sharding$->{0..1}.s_user$->{0..1}
spring.shardingsphere.sharding.tables.s_user.table-strategy.inline.sharding-column=age
spring.shardingsphere.sharding.tables.s_user.table-strategy.inline.algorithm-expression=s_user$->{Integer.valueOf(age) % 2}

# 分表策略 其中 s_student 为逻辑表 分表主要取决于s_student.id的行
spring.shardingsphere.sharding.tables.s_student.actual-data-nodes=sharding$->{0..1}.s_student$->{0..1}
spring.shardingsphere.sharding.tables.s_student.table-strategy.inline.sharding-column=age
spring.shardingsphere.sharding.tables.s_student.table-strategy.inline.algorithm-expression=s_student$->{Integer.valueOf(age) % 2}

# 主键生成策略
# spring.shardingsphere.sharding.tables.s_user.key-generator.column=id
# spring.shardingsphere.sharding.tables.s_user.key-generator.type=SNOWFLAKE

# 打印执行的数据库以及语句
spring.shardingsphere.props.sql.show=true
spring.main.allow-bean-definition-overriding=true
logging.level.com.sharding.demo.mapper=DEBUG

# mybatis
mybatis.mapper-locations=classpath:/mappers/*.xml

标签:tables,多表,Spring,shardingsphere,sharding,datasource,spring,SardingSphere,user
来源: https://www.cnblogs.com/yi1036943655/p/15733915.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有