基于springboot的ShardingSphere5.X的分库分表的解决方案之关联查询数据落库落表完美解决方案(四)
在前面一章节我们讲解了分库分表的关联查询的解决方案,可是在上一个章节我们遗留了一个问题,那就是我们的订单明细ID很明显没有符合我们落表的解决方案,那么我们在单独查询订单明细数据的时候,是全库进行查询,这样很明显不符合我们的预期。
1、解决方案
既然我们是根据order_id来进行分库分表,那是不是说明我们也可以根据order_item_id来进行分库分表进行数据的存储,那么我们的order_item_id只要和order_id一样满足相应的取余结果即可满足数据一起落在同一个数据库了。
2、代码改造
2.1、OrderService新增根据订单明细流水来获取订单明细的数据
在OrderService类中新增根据订单明细流水ID来获取订单明细流水数据方法【getOrderItem】,代码如下所示:
/**
* 功能描述: 根据订单明细ID来获取订单明细的数据
* @param orderItemId 订单明细流水ID
* @return 返回查询结果
*/
public OrderItem getOrderItem