MybatisPlus 支持使用 @SqlParser(filter=true)
注解来自动将 SQL 语句路由到主库执行,从而实现主从表同时新增的场景。
具体实现步骤如下:
- 定义一个实体类,其中包含主表和从表的字段;
- 在主表和从表的 Mapper 中分别添加
@SqlParser(filter=true)
注解; - 在 Service 层的新增方法中,先插入主表的数据,然后再插入从表的数据,此时使用 MybatisPlus 的
BaseMapper
对象的 insert 方法,即可实现同时插入主从表的数据。
这样做的原理是:MybatisPlus 在执行 SQ