找回密码
 立即注册
首页 业界区 业界 TenantLineInnerInterceptor源码解读

TenantLineInnerInterceptor源码解读

粹脍誊 6 天前
一、引言

TenantLineInnerInterceptor是MyBatis-Plus中的一个拦截器类,位于com.baomidou.mybatisplus.extension.plugins.inner.TenantLineInnerInterceptor,通过MyBatis-Plus的插件机制调用,用于实现表级的多租户功能。
本文基于MyBatis-Plus的3.5.9版本的源码,并fork了代码: https://github.com/changelzj/mybatis-plus/tree/lzj-3.5.9
[code]public class TenantLineInnerInterceptor extends BaseMultiTableInnerInterceptor implements InnerInterceptor {    private TenantLineHandler tenantLineHandler;    @Override    public void beforeQuery(Executor executor, MappedStatement ms, Object parameter, RowBounds rowBounds, ResultHandler resultHandler, BoundSql boundSql) throws SQLException {...}    @Override    public void beforePrepare(StatementHandler sh, Connection connection, Integer transactionTimeout) {...}    @Override    protected void processSelect(Select select, int index, String sql, Object obj) {...}    @Override    protected void processInsert(Insert insert, int index, String sql, Object obj) {...}    @Override    protected void processUpdate(Update update, int index, String sql, Object obj) {...}    @Override    protected void processDelete(Delete delete, int index, String sql, Object obj) {...}    protected void processInsertSelect(Select selectBody, final String whereSegment) {...}    protected void appendSelectItem(List
您需要登录后才可以回帖 登录 | 立即注册