shardingsphere 3.x升级到4.x 方案: 附按月分表、HitManager强制路由

本文详细介绍了将ShardingSphere从3.x版本升级到4.x的过程,包括maven配置和application.yml的更新。在按月分表策略中,分析了接口变更及代码适配。针对强制路由问题,揭示了4.x版本中HintManager的使用变化,强调了手动调用close的重要性。最后,提到了在4.x版本中遇到的select查询不到内容的问题,提供了解决方案。
摘要由CSDN通过智能技术生成

shardingsphere 3.x升级到4.x 方案: 附按月分表、HitManager强制路由、select 查询不到内容

背景

项目中使用到sharding, 3.x版本有若干bug不细述, 谷歌如下, 我遇到的是偶尔会不能分表查询, 查阅资料后决定升级到4.x版本
在这里插入图片描述

1. 升级配置

maven

升级前

<dependency>
	<groupId>io.shardingsphere</groupId>
	<artifactId>sharding-jdbc-spring-boot-starter</artifactId>
	<version>3.1.0</version>
</dependency>

升级后

<dependency>
	<groupId>org.apache.shardingsphere</groupId>
	<artifactId>sharding-jdbc-spring-boot-starter</artifactId>
	<version>4.1.1</version>
</dependency>

可以看到, 当前sharding已经是apache的顶级项目了

application.yml

升级前

sharding:
  jdbc:
    datasource:
      xxx
    config:
      props:
        xxx
      sharding:
        xxx

升级后

spring:
  shardingsphere:
    datasource:
      xxx
    props:
      xxx
    sharding:
      xxx

主要变化的点在层级关系中, 4.x中配置在spring下的shardingsphere中, datasource、props、sharding为统一层级的配置.

配置方面的升级就是以上两部分, 之后就是代码变动的点.

2. 按月分表策略

按月分表: 网上有基于3.x版本实现ComplexKeysShardingAlgorithm接口的方案https://blog.csdn.net/OliverAAAAAA/article/details/91380400,
升级到4.x之后 可以发现接口的定义发生了变化

3.x版本 ComplexKeysShardingAlgorithm接口

public interface ComplexKeysShardingAlgorithm extends 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值