亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

Mybatis利用分頁插件PageHelper快速實現分頁查詢

瀏覽:85日期:2023-10-18 10:34:58
目錄前言首先創建一個Maven項目數據庫中創建一張表設置Mybatis配置文件編寫pojo實體類和mapper接口和mapper映射文件創建測試類總結前言

Mybatis算是對數據庫操作的利器了。但是在處理分頁的時候,Mybatis并沒有什么特別的方法,一般需要自己去寫limit子句實現,成本較高。好在有國內開發者寫了一個PageHelper插件,可以幫助我們快速實現分頁查詢。

官網地址

首先創建一個Maven項目

導入相關依賴:

<!-- 依賴列表--> <dependencies><!--mysql驅動--><dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.25</version></dependency><!--單元測試--><dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.13</version> <scope>test</scope></dependency><!--pageHelper依賴--><dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> <version>5.2.1</version></dependency><!--mybatis依賴--><dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.5.7</version></dependency><!--log4j日志依賴--><dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.17</version></dependency> </dependencies>

記住導入PageHelper依賴:

<dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper</artifactId><version>5.2.1</version></dependency>數據庫中創建一張表

Mybatis利用分頁插件PageHelper快速實現分頁查詢

設置Mybatis配置文件

在resources目錄下,創建一個sqlMapConfig.xml文件,用于做一些全局的mybatis基本的配置,例如數據庫連接信息,事務,mapper映射文件路徑,日志實現,類的別名,也包含了分頁插件的基本配置。

<configuration><!--使用外部屬性配置文件 resource:指定類路徑下的某個屬性配置文件--><properties resource='db.properties' /><settings><!--日志的實現是LOG4J--><setting name='logImpl' value='LOG4J' /></settings> <!--聲明別名--><typeAliases><package name='com.ren.domain' /></typeAliases> <!--mybatis的插件配置--><plugins><!-- com.github.pagehelper為PageHelper類所在包名 --><plugin interceptor='com.github.pagehelper.PageInterceptor'><!-- 表示使用mysql的分頁方法 --><property name='helperDialect' value='mysql' /><!-- 表示當頁碼長度為0 的時候,就不進行分頁查詢 --><property name='pageSizeZero' value='true'/></plugin></plugins><!-- 配置連接數據庫四要素 --><environments default='dev'><environment id='dev'><transactionManager type='JDBC' /><dataSource type='POOLED'><property name='driver' value='${driverClassName}' /><property name='url' value='${url}' /><property name='username' value='${username}' /><property name='password' value='${password}' /></dataSource></environment></environments> <mappers><mapper resource='com/ren/mapper/StudentMapper.xml' /></mappers></configuration>編寫pojo實體類和mapper接口和mapper映射文件

Student實體類

package pojo;public class Student { private Integer id; private String name; private String email; private Integer age; public Student() { } public Student(Integer id, String name, String email, Integer age) {this.id = id;this.name = name;this.email = email;this.age = age; } public Integer getId() {return id; } public void setId(Integer id) {this.id = id; } public String getName() {return name; } public void setName(String name) {this.name = name; } public String getEmail() {return email; } public void setEmail(String email) {this.email = email; } public Integer getAge() {return age; } public void setAge(Integer age) {this.age = age; } @Override public String toString() {return 'Student{' +'id=' + id +', name=’' + name + ’’’ +', email=’' + email + ’’’ +', age=' + age +’}’; }}

mapper接口

package mapper;import pojo.Student;import java.util.List;public interface StudentMapper { //查詢所有學生 List<Student> selectAll();}

Mapper映射文件

<?xml version='1.0' encoding='UTF-8' ?><!DOCTYPE mapperPUBLIC '-//mybatis.org//DTD Mapper 3.0//EN''http://mybatis.org/dtd/mybatis-3-mapper.dtd'><mapper namespace='mapper.StudentMapper'> <select resultType='pojo.Student'>select * from student order by id </select></mapper>

在sqlMapConfig文件中指定Mapper文件位置

<!-- mapper映射文件位置--><mappers><package name='mapper'/></mappers>

編寫MyBatisUtils

package utils;import org.apache.ibatis.io.Resources;import org.apache.ibatis.session.SqlSession;import org.apache.ibatis.session.SqlSessionFactory;import org.apache.ibatis.session.SqlSessionFactoryBuilder;import java.io.IOException;import java.io.InputStream;/** * 工具類:創建SqlSession對象 */public class MyBatisUtil { private static SqlSessionFactory factory = null; static {String config='sqlMapConfig.xml';try { InputStream inputStream =Resources.getResourceAsStream(config); factory = new SqlSessionFactoryBuilder().build(inputStream);} catch (IOException e) { e.printStackTrace();} } //創建方法,獲取SqlSession對象 public static SqlSession getSqlSession(){SqlSession session = null;if( factory != null ){ session =factory.openSession();// openSession(true);}return session; }}創建測試類

import com.github.pagehelper.PageHelper;import mapper.StudentMapper;import org.apache.ibatis.session.SqlSession;import org.junit.Test;import pojo.Student;import utils.MyBatisUtil;import java.util.List;public class pageHelper_Test { @Test public void PageHelperTest(){//獲取sqlSessionSqlSession sqlSession = MyBatisUtil.getSqlSession();//獲取mapper代理StudentMapper mapper = sqlSession.getMapper(StudentMapper.class);//調用PageHelperPageHelper.startPage(2,2);//查詢所有學生List<Student> studentList = mapper.selectAll();//遍歷結果List集合studentList.forEach(student -> System.out.println(student));//關閉sqlSession對象sqlSession.close(); }}

查看結果

Mybatis利用分頁插件PageHelper快速實現分頁查詢

可以看到sql語句,在mapper文件中并沒有寫limit,pageHelper已經幫我們加上了limit關鍵字完成了查詢.OK了

總結

到此這篇關于Mybatis利用分頁插件PageHelper快速實現分頁查詢的文章就介紹到這了,更多相關Mybatis分頁插件PageHelper內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Mybatis 數據庫
相關文章:
主站蜘蛛池模板: 中文xxx视频 | 免费一级大黄特色大片 | 色黄网站在线观看 | 日韩一级视频免费观看 | 日本v片免费一区二区三区 日本wwwwwxxxxx | 日本黄色性生活片 | 亚洲国产精品综合久久久 | 麻豆果冻传媒一卡二卡 | 国产一区系列在线观看 | 欧美限制级在线观看 | 国产精品一区二区在线观看 | 久久免费精品国产视频 | 免费毛片视频 | 亚洲热图| 国产传媒网址 | 911亚洲精品 | 成人性色生活片免费看爆迷你毛片 | 深夜福利视频在线看免费 | 国内精品久久久久久麻豆 | 黄色a大片 | 国产精品久久久久影院免费 | 国产区视频在线观看 | 韩国尤物主播性视频在线播放 | 国产精品亚洲四区在线观看 | 久久夜色精品国产亚洲 | 久久本道久久综合伊人 | 色综合久久综合 | 国产日韩精品欧美一区视频 | 国产精品一区二区丝瓜 | 俄罗斯美女bbbbxx | 在线播放一区二区精品产 | 国产在线观看精品一区二区三区91 | 一区二区三区免费在线 | 天天做天天爱天天影视综合 | 国产精品嫩草影院在线观看免费 | 蜜桃视频成a人v在线 | 国产成人综合精品一区 | 永久在线播放 | 人人狠狠综合88综合久久 | 亚洲大胆视频 | 欧美一区二区久久精品 |