MyBatis提供了拦截器接口,我们可以实现自己的拦截器,将其作为一个plugin装入到SqlSessionFactory中。
首先要说的是,Spring在依赖注入bean的时候,会把所有实现MyBatis中Interceptor接口的所有类都注入到SqlSessionFactory中,作为plugin存在。既然如此,我们集成一个plugin便很简单了,只需要使用@Bean创建PageHelper对象即可。

1、添加pom依赖
<dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> <version>4.1.0</version> </dependency>
2、MyBatisConfiguration.java类配置
package com.example.mybatis;
import java.util.Properties;
import javax.sql.DataSource;
import org.apache.ibatis.plugin.Interceptor;
import org.apache.ibatis.session.SqlSessionFactory;
import org.mybatis.spring.SqlSessionFactoryBean;
import org.mybatis.spring.SqlSessionTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.jdbc.datasource.DataSourceTransactionManager;
import org.springframework.transaction.PlatformTransactionManager;
import org.springframework.transaction.annotation.EnableTransactionManagement;
import org.springframework.transaction.annotation.TransactionManagementConfigurer;
import com.github.pagehelper.PageHelper;
@Configuration
//加上这个注解,使得支持事务
@EnableTransactionManagement
public class MyBatisConfig implements TransactionManagementConfigurer {
@Autowired
private DataSource dataSource;
@Override
public PlatformTransactionManager annotationDrivenTransactionManager() {
return new DataSourceTransactionManager(dataSource);
}
@Bean(name = "sqlSessionFactory")
public SqlSessionFactory sqlSessionFactoryBean(PageHelper pageHelper) {
SqlSessionFactoryBean bean = new SqlSessionFactoryBean();
bean.setDataSource(dataSource);
//自定义数据库配置的时候,需要将pageHelper的bean注入到Plugins中,如果采用系统默认的数据库配置,则只需要定义pageHelper的bean,会自动注入。
bean.setPlugins(new Interceptor[] { pageHelper });
try {
return bean.getObject();
} catch (Exception e) {
e.printStackTrace();
throw new RuntimeException(e);
}
}
@Bean
public SqlSessionTemplate sqlSessionTemplate(SqlSessionFactory sqlSessionFactory) {
return new SqlSessionTemplate(sqlSessionFactory);
}
@Bean
public PageHelper pageHelper() {
PageHelper pageHelper = new PageHelper();
Properties p = new Properties();
p.setProperty("offsetAsPageNum", "true");
p.setProperty("rowBoundsWithCount", "true");
p.setProperty("reasonable", "true");
p.setProperty("dialect", "mysql");
pageHelper.setProperties(p);
return pageHelper;
}
}
3、分页查询测试
@RequestMapping("/likename")
public List<Student> likeName(@RequestParam String name){
PageHelper.startPage(1, 1);
return stuMapper.likeName(name);
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# spring
# boot
# mybatis
# 分页
# springboot集成mybatisplus实例详解
# SpringBoot项目集成依赖Mybatis步骤
# Spring Boot集成MyBatis实现通用Mapper的配置及使用
# 详解springboot集成mybatis xml方式
# SpringBoot集成MyBatis的分页插件PageHelper实例代码
# 详解Spring Boot集成MyBatis(注解方式)
# SpringBoot集成Mybatis过程步骤图解
# 只需要
# 自己的
# 的是
# 拦截器
# 将其
# 很简单
# 自定义
# 作为一个
# 可以实现
# 会把
# 既然如此
# 大家多多
# package
# import
# Properties
# util
# version
# artifactId
相关文章:
如何选购建站域名与空间?自助平台全解析
制作国外网站的软件,国外有哪些比较优质的网站推荐?
Dapper的Execute方法的返回值是什么意思 Dapper Execute返回值详解
如何使用Golang table-driven基准测试_多组数据测量函数效率
网站网页制作专业公司,怎样制作自己的网页?
建站一年半SEO优化实战指南:核心词挖掘与长尾流量提升策略
如何通过网站建站时间优化SEO与用户体验?
建站之星IIS配置教程:代码生成技巧与站点搭建指南
Swift开发中switch语句值绑定模式
胶州企业网站制作公司,青岛石头网络科技有限公司怎么样?
建站主机是什么?如何选择适合的建站主机?
网站制作哪家好,cc、.co、.cm哪个域名更适合做网站?
如何用y主机助手快速搭建网站?
h5网站制作工具有哪些,h5页面制作工具有哪些?
网站海报制作教学视频教程,有什么免费的高清可商用图片网站,用于海报设计?
详解jQuery停止动画——stop()方法的使用
大型企业网站制作流程,做网站需要注册公司吗?
建站之星各版本价格是多少?
如何在腾讯云免费申请建站?
代购小票制作网站有哪些,购物小票的简要说明?
小米网站链接制作教程,请问miui新增网页链接调用服务有什么用啊?
如何挑选最适合建站的高性能VPS主机?
网站制作新手教程,新手建设一个网站需要注意些什么?
免费网站制作appp,免费制作app哪个平台好?
北京网页设计制作网站有哪些,继续教育自动播放怎么设置?
建站主机功能解析:服务器选择与快速搭建指南
陕西网站制作公司有哪些,陕西凌云电器有限公司官网?
如何零基础在云服务器搭建WordPress站点?
建站之星如何实现PC+手机+微信网站五合一建站?
Avalonia如何实现跨窗口通信 Avalonia窗口间数据传递
如何快速上传自定义模板至建站之星?
广东企业建站网站优化与SEO营销核心策略指南
如何在Windows 2008云服务器安全搭建网站?
XML的“混合内容”是什么 怎么用DTD或XSD定义
网站制作多少钱一个,建一个论坛网站大约需要多少钱?
北京制作网站的公司排名,北京三快科技有限公司是做什么?北京三快科技?
ui设计制作网站有哪些,手机UI设计网址吗?
网站制作服务平台,有什么网站可以发布本地服务信息?
网站视频怎么制作,哪个网站可以免费收看好莱坞经典大片?
深入理解Android中的xmlns:tools属性
广州网站建站公司选择指南:建站流程与SEO优化关键词解析
视频网站app制作软件,有什么好的视频聊天网站或者软件?
独立制作一个网站多少钱,建立网站需要花多少钱?
音响网站制作视频教程,隆霸音响官方网站?
如何用手机制作网站和网页,手机移动端的网站能制作成中英双语的吗?
怀化网站制作公司,怀化新生儿上户网上办理流程?
图片制作网站免费软件,有没有免费的网站或软件可以将图片批量转为A4大小的pdf?
建站之星官网登录失败?如何快速解决?
详解ASP.NET 生成二维码实例(采用ThoughtWorks.QRCode和QrCode.Net两种方式)
如何在IIS7中新建站点?详细步骤解析
*请认真填写需求信息,我们会在24小时内与您取得联系。