MyBatis 的执行流程


配置加载阶段 读取配置文件:加载 mybatis-config.xml(全局配置,如数据源、插件、类型处理器等)。 加载映射文件:解析 Mapper.xml 或注解形式的 SQL 定义,生成 MappedStatement 对象(包含 SQL、参数/结果映射等信息)。 构建 SqlSession

自研数据库路由组件:实现动态数据源切换与分库分表

Java 

为什么需要分库分表? 背景 首先,抽奖活动通常会在短时间内吸引大量用户参与,导致系统瞬时请求量激增。同时,活动有明确的时间范围,需要在活动期间完成。然后还有一点是抽奖活动数据不会长期累积,活动结束后数据量相对来说是稳定的。 引入 业务体量较大,数据增长较快,所以需要把用户数据拆分到不同的库表中去,减