当前位置: 首页 > news >正文

Mybatis 源码解读-Plugin插件源码

‌‌

作者源码阅读笔记主要采用金山云文档记录的,所有的交互图和代码阅读笔记都是记录在云文档里面,本平台的文档编辑实在不方便,会导致我梳理的交互图和文档失去原来的格式,所以整理在文档里面,供大家阅读交流.

【金山文档 | WPS云文档】 Plugin插件源码

核心接口与核心类

Interceptor 接口

核心功能‌:所有自定义插件必须实现的接口,定义拦截逻辑

关键方法‌:

Object intercept(Invocation invocation) throws Throwable;
Object plugin(Object target);
void setProperties(Properties properties);

intercept():执行实际拦截逻辑,通过 invocation.proceed() 调用原始方法

plugin():生成目标对象的代理类

Invocation

作用‌:封装被拦截方法的信息(目标对象、方法、参数等)

核心方法‌:

Object proceed(); // 执行原始方法
Method getMethod(); // 获取被拦截的Method对象

通过 proceed() 实现责任链调用

http://www.dtcms.com/a/331960.html

相关文章:

  • 数据结构---关于复杂度的基础解析与梳理
  • 2025年缩水甘油苯基醚市场深度全景调研:投资前景分析及趋势预测
  • 机器学习——TF-IDF算法
  • 捉迷藏(BFS)
  • NY219NY220美光固态闪存NY224NY229
  • 数据结构---链式结构二叉树
  • PostgreSQL——触发器
  • 【慕伏白】CTFHub 技能树学习笔记 -- 基础知识 签到
  • leetcode-python-344反转字符串
  • Wireshark 与 Fiddler 的对比与适用场景
  • 宋红康 JVM 笔记 Day01|JVM介绍
  • Flink on YARN启动全流程深度解析
  • AI生成视频大纲(AI生成视频摘要功能)
  • python中的map函数
  • 记录LiveData使用及原理
  • Unity宝箱随机事件实现指南
  • AI三国杀:马斯克炮轰苹果“偏袒”OpenAI,Grok与ChatGPT的应用商店战争揭秘
  • 【昇腾】VirtualBox虚拟机下搭建Ubuntu 22.04环境给TF卡制卡报读写IO错误的问题处理_20250814
  • 【CF】Day127——杂题 (数论 gcd | 数论 gcd | 博弈论 | 二分图判断 | 贪心 + 暴力 / 二分答案 | 数论 gcd + 动态规划)
  • linux 主机驱动(SPI)与外设驱动分离的设计思想
  • 把大模型当“温度计”——基于 LLM 的分布式系统异常根因定位实战
  • 企业可商用的conda:「Miniforge」+「conda-forge」
  • Data Augmentation数据增强
  • 快速部署一个鉴黄服务
  • Android 项目:画图白板APP开发(二)——历史点、数学方式推导点
  • SQL详细语法教程(三)mysql的函数知识
  • 区块链 + 域名Web3时代域名投资的新风口(上)
  • Gemma 3 多模态推理 通过vllm运行Gemma-3-27B-IT模型的推理服务
  • 【系统安装】虚拟机中安装win10IOT企业版系统记录
  • 解决安装 scikit-learn==1.3.1 时出现的版本匹配错误