@Intercepts(value=@Signature(type=org.apache.ibatis.executor.resultset.ResultSetHandler.class,method="handleResultSets",args=java.sql.Statement.class)) public class MybatisResultSetInterceptor extends AbstractMybatisInterceptor
MybatisResultSetInterceptor 是一个 MyBatis 插件拦截器,用于拦截 SQL 查询结果的处理过程。
该拦截器主要作用是在 MyBatis 处理查询结果集时,解析 SQL 中的表名,并依次调用注册的MybatisFieldHandler
处理器对查询结果进行处理。
该类继承自AbstractMybatisInterceptor,并使用Intercepts注解指定拦截ResultSetHandler.handleResultSets(java.sql.Statement)方法。
ResultSetHandler.handleResultSets(java.sql.Statement)方法,该方法负责处理查询结果集。MybatisFieldHandler处理器。AbstractMybatisInterceptor,
MybatisFieldHandler,
ResultSetHandler,
Statement| 构造器和说明 |
|---|
MybatisResultSetInterceptor() |
| 限定符和类型 | 方法和说明 |
|---|---|
Object |
intercept(org.apache.ibatis.plugin.Invocation invocation)
拦截执行查询结果处理的核心方法。
|
void |
registerResultSetFieldHandler(MybatisFieldHandler handler)
注册一个
MybatisFieldHandler处理器,该处理器会在执行拦截操作时对查询结果进行处理。 |
doIntercept, parseTableNamesFromSql, parseTableNamesFromSql, parseTableNamesFromSqlpublic Object intercept(org.apache.ibatis.plugin.Invocation invocation) throws Throwable
invocation - 当前拦截的调用信息,包含方法参数等信息Throwable - 异常抛出public void registerResultSetFieldHandler(MybatisFieldHandler handler)
MybatisFieldHandler处理器,该处理器会在执行拦截操作时对查询结果进行处理。handler - MybatisFieldHandler处理器实例Copyright © 2025 Awesome Java Web. All rights reserved.