关于使用sharding分表后@ShardingDS注解查询问题

Blade 已结 2 285
whh
whh 2025-01-15 17:07

一、该问题的重现步骤是什么?

  1. 在impl类中定义方法并且添加@ShardingDS,在方法中调用mapper继承的方法(如list)查询时为按照分表查询,

    PointDeviceEntity已分表

    image.png

2. 使用@ShardingDS给方法注解能实现分表,但如果需要当前实体类所有业务都进行分类操作时使用@ShardingDS是否太过瘾频繁,

并且如问题1中有部分都是框架默认的方法这种又如何处理?

3.


二、你期待的结果是什么?实际看到的又是什么?

  1. 关于继承的方法无法分表查询如何处理

  2. 对应进行分表的业务是否都需要使用@ShardingDS才能分表操作?有无其他统一配置

三、你正在使用的是什么产品,什么版本?在什么操作系统上?

boot版  3.4.0   Win10

四、请提供详细的错误堆栈信息,这很重要。


五、若有更多详细信息,请在下面提供。

2条回答
  •  whh
    whh (楼主)
    2025-01-16 14:36

    @ShardingDS注解直接引用service类上后报错报红,麻烦给个完好的示例

    作者追问:2025-01-16 14:36

    具体报什么错

    回答: 2025-01-16 14:36

    提示Remove 删除。

    所有现在是写在方法上就没有问题

    image.png

    作者追问:2025-01-16 14:36

    我这边不会报错,你点进去看看这个注解是怎么定义的,看看有没有 ElementType.TYPE

    CleanShot20250121162403@2x.png

    CleanShot20250121162421@2x.png

    回答: 2025-01-16 14:36

    这是我的

    image.png

    作者追问:2025-01-16 14:36

    下载对应版本的BladeX-Tool,然后加上type,再install刷新依赖就行了。历史版本这里找:https://center.javablade.com/blade/BladeX/releases


    回答: 2025-01-16 14:36

    BladeX-Tool这个要怎么用?我的是boot版直接引到jar呀

    作者追问:2025-01-16 14:36

    Tool工程编译觉得麻烦的话,不然你直接用 @DS("sharding") 注解也一样的效果

代码语言
提交回复