PageHelper升级为MyBatis Plugin,有何优势与特点?

2026-05-21 03:402阅读0评论SEO资讯
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计3384个文字,预计阅读时间需要14分钟。

PageHelper升级为MyBatis Plugin,有何优势与特点?

在众多业务场景下,我们需截取SQL,避免侵入原有代码业务处理,如:历史记录、分页操作、数据权限过滤操作、SQL执行时间监控等。

在很多业务场景下我们需要去拦截​​SQL​​,达到不入侵原有代码业务处理一些东西,比如:历史记录、分页操作、数据权限过滤操作、​​SQL​​执行时间性能监控等等,这里我们就可以用到​​MyBatis​​的插件​​Plugin​​。下面我们来了解一下​​Plugin​​到底是如何工作的。

一、背景

使用过​​MyBatis​​框架的朋友们肯定都听说过​​PageHelper​​这个分页神器吧,其实​​PageHelper​​的底层实现就是依靠​​plugin​​。下面我们来看一下​​PageHelper​​是如何利用​​plugin​​实现分页的。

二、MyBatis 执行概要图

首先我们先看一下​​MyBatis​​的执行流程图,对其执行流程有一个大体的认识。

三、MyBatis 核心对象介绍

从​​MyBatis​​代码实现的角度来看,​​MyBatis​​的主要的核心部件有以下几个:

  • ​​Configuration​​:初始化基础配置,比如​​MyBatis​​的别名等,一些重要的类型对象,如,插件,映射器,​​ObjectFactory​​和​​typeHandler​​对象,​​MyBatis​​所有的配置信息都维持在​​Configuration​​对象之中。
  • ​​SqlSessionFactory​​:​​SqlSession​​工厂,用于生产​​SqlSession​​。
阅读全文

本文共计3384个文字,预计阅读时间需要14分钟。

PageHelper升级为MyBatis Plugin,有何优势与特点?

在众多业务场景下,我们需截取SQL,避免侵入原有代码业务处理,如:历史记录、分页操作、数据权限过滤操作、SQL执行时间监控等。

在很多业务场景下我们需要去拦截​​SQL​​,达到不入侵原有代码业务处理一些东西,比如:历史记录、分页操作、数据权限过滤操作、​​SQL​​执行时间性能监控等等,这里我们就可以用到​​MyBatis​​的插件​​Plugin​​。下面我们来了解一下​​Plugin​​到底是如何工作的。

一、背景

使用过​​MyBatis​​框架的朋友们肯定都听说过​​PageHelper​​这个分页神器吧,其实​​PageHelper​​的底层实现就是依靠​​plugin​​。下面我们来看一下​​PageHelper​​是如何利用​​plugin​​实现分页的。

二、MyBatis 执行概要图

首先我们先看一下​​MyBatis​​的执行流程图,对其执行流程有一个大体的认识。

三、MyBatis 核心对象介绍

从​​MyBatis​​代码实现的角度来看,​​MyBatis​​的主要的核心部件有以下几个:

  • ​​Configuration​​:初始化基础配置,比如​​MyBatis​​的别名等,一些重要的类型对象,如,插件,映射器,​​ObjectFactory​​和​​typeHandler​​对象,​​MyBatis​​所有的配置信息都维持在​​Configuration​​对象之中。
  • ​​SqlSessionFactory​​:​​SqlSession​​工厂,用于生产​​SqlSession​​。
阅读全文