亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發(fā) > Java > 正文

Mybatis分頁插件使用方法詳解

2024-07-14 08:43:24
字體:
供稿:網(wǎng)友

本文實(shí)例為大家分享了Mybatis分頁插件使用的具體代碼,供大家參考,具體內(nèi)容如下

1.分頁插件簡介

pagehelper源碼

都說這是史上最好用的分頁插件,支持多種數(shù)據(jù)庫以多種方式分頁。

2.分頁插件的使用

2.1導(dǎo)入maven依賴

<dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> <version>最新版本</version></dependency>

2.2 添加配置

1.在mybatis的config配置文件中添加攔截器 <plugin>

<!-- plugins在配置文件中的位置必須符合要求,否則會報(bào)錯(cuò),順序如下: properties?, settings?, typeAliases?, typeHandlers?, objectFactory?,objectWrapperFactory?, plugins?, environments?, databaseIdProvider?, mappers?--><plugins>  <plugin interceptor="com.github.pagehelper.PageHelper">   <property name="dialect" value="mysql"/>   <!-- 該參數(shù)默認(rèn)為false -->   <!-- 設(shè)置為true時(shí),會將RowBounds第一個(gè)參數(shù)offset當(dāng)成pageNum頁碼使用 -->   <!-- 和startPage中的pageNum效果一樣-->   <property name="offsetAsPageNum" value="true"/>   <!-- 該參數(shù)默認(rèn)為false -->   <!-- 設(shè)置為true時(shí),使用RowBounds分頁會進(jìn)行count查詢 -->   <property name="rowBoundsWithCount" value="true"/>   <!-- 設(shè)置為true時(shí),如果pageSize=0或者RowBounds.limit = 0就會查詢出全部的結(jié)果 -->   <!-- (相當(dāng)于沒有執(zhí)行分頁查詢,但是返回結(jié)果仍然是Page類型)-->   <property name="pageSizeZero" value="true"/>   <!-- 3.3.0版本可用 - 分頁參數(shù)合理化,默認(rèn)false禁用 -->   <!-- 啟用合理化時(shí),如果pageNum<1會查詢第一頁,如果pageNum>pages會查詢最后一頁 -->   <!-- 禁用合理化時(shí),如果pageNum<1或pageNum>pages會返回空數(shù)據(jù) -->   <property name="reasonable" value="false"/>   <!-- 3.5.0版本可用 - 為了支持startPage(Object params)方法 -->   <!-- 增加了一個(gè)`params`參數(shù)來配置參數(shù)映射,用于從Map或ServletRequest中取值 -->   <!-- 可以配置pageNum,pageSize,count,pageSizeZero,reasonable,不配置映射的用默認(rèn)值 -->   <!-- 不理解該含義的前提下,不要隨便復(fù)制該配置 -->   <property name="params" value="pageNum=start;pageSize=limit;"/>  </plugin></plugins>

2.或者在spring配置中添加

<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <!-- 注意其他配置 --> <property name="plugins"> <array>  <bean class="com.github.pagehelper.PageInterceptor">  <property name="properties">   <!--使用下面的方式配置參數(shù),一行配置一個(gè) -->   <value>   params=value1   </value>  </property>  </bean> </array> </property></bean>

這兩種方式不能同時(shí)用

3.在代碼中的使用

3.1設(shè)置一個(gè)基礎(chǔ)的請求類

public class BaseRequest implements Serializable { private static final long serialVersionUID = 1193444819529643410L; private Integer pageNum;//頁數(shù) private Integer pageSize;//每頁行數(shù) private Boolean count;//是否查詢總條數(shù) public Integer getPageNum() {  return pageNum; } public void setPageNum(Integer pageNum) {  this.pageNum = pageNum; } public Integer getPageSize() {  return pageSize; } public void setPageSize(Integer pageSize) {  this.pageSize = pageSize; } public Boolean getCount() {  return count; } public void setCount(Boolean count) {  this.count = count; } @Override public String toString() {  return "BaseRequest{" +    "pageNum=" + pageNum +    ", pageSize=" + pageSize +    '}'; }}

3.2 設(shè)置一個(gè)基礎(chǔ)的PageService 接口

讓每個(gè)service 去實(shí)現(xiàn)這個(gè)接口來設(shè)置分頁的初始值

public interface PageService { default void setDefaultPageInfo(BaseRequest baseRequest) {  if (null != baseRequest) {   baseRequest.setPageNum(null == baseRequest.getPageNum() ? Constants.PAGE_NUM : baseRequest.getPageNum());   baseRequest     .setPageSize(null == baseRequest.getPageSize() ? Constants.PAGE_SIZE : baseRequest.getPageSize());   baseRequest.setCount(null == baseRequest.getCount() ? Boolean.TRUE : baseRequest.getCount());  } else {   baseRequest = new BaseRequest();   baseRequest.setPageNum(Constants.PAGE_NUM);   baseRequest.setPageSize(Constants.PAGE_SIZE);   baseRequest.setCount(Boolean.TRUE);  }  PageHelper.startPage(baseRequest.getPageNum(), baseRequest.getPageSize(),baseRequest.getCount()); }}

3.3 如果做了數(shù)據(jù)轉(zhuǎn)換這用來復(fù)制屬性值(可選)

數(shù)據(jù)模型entity 只對應(yīng)數(shù)據(jù)庫表中的字段, 出參與入?yún)?都是數(shù)據(jù)傳輸對象 dto , 從數(shù)據(jù)庫中查出來的是entity而 接口返回的是dto 所要BeanUtils.copyProperties復(fù)制屬性,和pageutils.copyProperties 復(fù)制分頁屬性

public class PageUtils { public static void copyProperties(PageInfo<?> source, PageInfo<?> des) {  des.setEndRow(source.getEndRow());  des.setFirstPage(source.getFirstPage());  des.setHasNextPage(source.isHasNextPage());  des.setHasPreviousPage(source.isHasPreviousPage());  des.setIsFirstPage(source.isIsFirstPage());  des.setIsLastPage(source.isIsLastPage());  des.setNavigatepageNums(source.getNavigatepageNums());  des.setNavigatePages(source.getNavigatePages());  des.setNextPage(source.getNextPage());  des.setOrderBy(source.getOrderBy());  des.setPageNum(source.getPageNum());  des.setPages(source.getPages());  des.setPageSize(source.getPageSize());  des.setPrePage(source.getPrePage());  des.setSize(source.getSize());  des.setStartRow(source.getStartRow());  des.setTotal(source.getTotal()); }}

4.使用示例

在OrderService實(shí)現(xiàn)類中

import com.github.pagehelper.PageInfo;import com.javxuan.common.util.PageUtils;import com.javxuan.order.entity.Order;import com.javxuan.order.response.OrderDto;import com.javxuan.order.service.PageService;import org.springframework.beans.BeanUtils;import org.springframework.beans.factory.annotation.Autowired;import java.util.ArrayList;public class OrderServcieImpl implements IOrderServcie, PageService { @Autowired IOrderMapper orderMapper; @GetMapping("/order") public PageInfo<OrderDto> list(OrderRequest orderRequest){  //設(shè)置默認(rèn)分頁信息 PageService的方法  setDefaultPageInfo(orderRequest);  //查出order列表  List<Order> orderList = orderMapper.selectList();  //將entity的列表分頁  PageInfo<Order> orderPageInfo = new PageInfo<>(orderList);  //連續(xù)顯示5頁與上面的二選一  //PageInfo<Order> orderPageInfo = new PageInfo<>(orderList,5);  //定義一個(gè)數(shù)據(jù)傳輸對象dtoList  List<OrderDto> dtoList = new ArrayList<>();  if(null==orderList || orderList.size<=0){   return null;  }  //給dtoList 加值  for(Order order:orderList){   OrderDto dto = new OrderDto();   //將entity 的屬性值 復(fù)制給dto上   BeanUtils.copyProperties(order, dto);   dtoList.add(dto);  }  //給dto 分頁  PageInfo<OrderDto> dtoPageInfo = new PageInfo<>(dtoList);  //連續(xù)顯示5頁 與上面的二選一  //PageInfo<Order> orderPageInfo = new PageInfo<>(orderList,5);  //將entity的分頁信息復(fù)制給dtoPageInfo上  PageUtils.copyProperties(orderPageInfo, dtoPageInfo);  return dtoPageInfo; }}

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持VeVb武林網(wǎng)。


注:相關(guān)教程知識閱讀請移步到JAVA教程頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
国产中文字幕在线播放| 一个人看的免费视频色| 日韩精品免费电影| 国产主播一区二区| 波多野结衣久久久久| 日韩午夜电影在线观看| 91视频网址免费观看| 成人国产亚洲欧美成人综合网| 男人天堂av网站| 日韩电影在线一区二区三区| 亚洲无码精品一区二区三区| 国产日韩精品电影| 成人免费网站观看| 欧美午夜精品久久久久久浪潮| 第四色播日韩| 久久er99热精品一区二区| 久久久亚洲午夜电影| 国产一区二区剧情av在线| xxww在线观看| 高清成人在线| 国产日本欧美一区二区| 黄色漫画在线免费观看| 5566中文字幕一区二区电影| 亚洲精品v亚洲精品v日韩精品| 亚洲综合图片一区| 欧美激情视频一区二区三区在线播放| 异国色恋浪漫潭| 成年人网站在线观看视频| 亚洲国产va精品久久久不卡综合| 一本大道熟女人妻中文字幕在线| 亚洲 精品 综合 精品 自拍| 91亚洲精品乱码久久久久久蜜桃| 亚洲精选一区二区| 久久久久久久久久久久国产| 欧美日韩亚洲视频| 香港伦理在线| 久久精品一区二区三| 国产又爽又黄又舒服又刺激视频| 国产三级伦理片| 国产a级片免费看| 91欧美精品成人综合在线观看| 十大黄色软件免费看| 深夜福利日韩在线看| 国产ts丝袜人妖系列视频| 高清国产一区二区三区| av网站免费看| 国产真人做爰毛片视频直播| 中文字幕2019第三页| 美日韩黄色大片| 久久久久久中文字幕| 天天久久综合| 99riav国产精品| 欧美精品日韩一区| 欧美日韩精品久久| 国产黄色片免费看| 亚洲视频免费观看| 国产xxxxxx久色视频在| 亚洲免费看片| 国产伦精品一区二区三区免费| 久色视频在线观看| 久久久久久91亚洲精品中文字幕| 久久视频在线观看| 国产一区二区三区在线看| 欧美色图888| 欧美韩国日本在线观看| 天堂а√在线中文在线鲁大师| www.国产在线| 国产在线拍揄自揄拍无码| 波多野结衣一区二区在线| 佐山爱痴汉视频一区二区三区| 青青青在线视频播放| 国产成人综合自拍| 久久视频www| 五月天婷婷影视| h无码动漫在线观看| 国产精品影音先锋| 男人靠女人免费视频网站| 国产91热爆ts人妖在线| www.日韩免费| 亚洲免费av网| 亚洲视频 欧美视频| 亚洲av激情无码专区在线播放| 亚洲欧美日韩综合在线| 欧美 日韩 国产 在线观看| 中文字幕乱码一区| 欧美videos另类齐全| 欧美videos粗暴高清性| 青青久在线视频免费观看| 超薄肉色丝袜足j调教99| 一本大道av一区二区在线播放| 国产成人免费在线观看| 日本.亚洲电影| www三级免费| 精品福利一二区| 欧美人与性动交α欧美精品图片| 粉嫩一区二区三区在线看| 91理论片午午论夜理片久久| 免费观看av网站| 亚洲久本草在线中文字幕| 天天色影综合网| 性欧美暴力猛交69hd| 久久精品国产理论片免费| 亚洲精品国产精品国自产| 午夜欧美大尺度福利影院在线看| 成人综合电影| 福利所第一导航| а√天堂8资源中文在线| 先锋影音亚洲资源| 91精品国产自产在线观看永久∴| 久久久国产一级片| 国产美女被遭强高潮免费网站| √天堂资源地址在线官网| 亚洲a区在线视频| 一区二区三区在线观看免费视频| 伊人久久久久久久久久久| 国产午夜精品全部视频播放| 老熟妇一区二区三区| 国产 日韩 欧美在线| 欧美日韩精品一区二区视频| 国产又粗又猛又爽又黄的视频小说| 在线天堂www在线国语对白| **精品中文字幕一区二区三区| 白丝美女让我捅| 亚洲一级Av无码毛片久久精品| 无码任你躁久久久久久久| 日本va中文字幕| 明星乱亚洲合成图.com| 99精品人妻少妇一区二区| 国产一卡2卡3卡4卡网站免费| 黄色视屏免费在线观看| 天天操中文字幕| 新婚的少妇hd中文字幕| 天堂成人国产精品一区| 欧类av怡春院| 久久综合久久久| 这里只有精品视频在线观看| 妺妺窝人体色777777| 亚洲无码久久久久| 久久网站免费观看| 麻豆国产尤物av尤物在线观看| 日韩69视频在线观看| 三区在线观看| 久久久精品免费| 久久一卡二卡| 色视频免费在线观看| 国产真实乱偷精品视频| 欧美日韩在线视频免费| 欧美在线视频免费播放| 亚洲二区精品| 国产精品视频一区国模私拍| 一区二区在线观看免费视频| 色老头一区二区三区在线观看| 成人444kkkk在线观看| 另类图片第一页| 国产黄色大片网站| 91免费日韩| 黑人巨大精品一区二区在线| 国产91精品入口17c| 亚洲成av人在线观看| 中文字幕乱码人妻无码久久| 国内不卡的一区二区三区中文字幕| 日本一区二区在线不卡| 天天堂资源网在线观看免费视频| 懂色av蜜臀av粉嫩av分享吧最新章节| 久久综合色天天久久综合图片| 91久久精品久久国产性色也91| 91成人抖音| 亚洲精品v欧美精品v日韩精品| 欧美高清不卡| 香港久久久电影| 亚洲黄色精品| 欧美日韩中文| 国产情侣一区二区三区| 91看片官网| 91极品视频在线| 国产不卡视频在线播放| 亚洲国产成人在线| 久久久久久黄| av影院在线免费观看| 日本在线观看一区二区三区| 日韩欧美一区二区三区视频| 久久视频在线观看中文字幕| 亲子乱一区二区三区电影| 久久精品国产大片免费观看| 国产欧美一区二区三区在线看| 久久久www成人免费毛片| 欧美极品jizzhd欧美仙踪林| 国产在线视频一区| 成人动漫h在线观看| 国产一级片av| 91综合久久一区二区| 日本免费一区二区三区四区| 操碰在线免费| 制服 丝袜 综合 日韩 欧美| 欧美在线视频一二三| 亚洲一区二区在线播放相泽| 亚洲欧美偷拍自拍| 天堂在线中文字幕| 精品视频久久久| 欧美视频一区二区在线| 经典三级一区二区三区视频| 视频一区在线观看| 亚洲一二在线观看| 亚洲精品欧美在线| 日本不良网站在线观看| 99国产精品自拍| 快播亚洲色图| 制服丝袜综合日韩欧美| 中文字幕一二三| 精品国产黄色片| 97超碰人人模人人人爽人人爱| 亚洲精品网站在线播放gif| 午夜精品小视频| 成年人观看网站| 久久精品国内一区二区三区| 欧美日韩高清在线播放| 欧美黑人国产人伦爽爽爽| 精品人妻无码中文字幕18禁| 九色porny丨首页在线| 在线视频 日韩| 国产精品igao网网址不卡| 欧美成人高清| 国产一级做a爱片久久毛片a| 欧美日韩一区二区三区在线电影| 日本一区二区成人| 1234区在线观看视频免费| 久久久com| 久久99精品久久久久久久久久久久| 亚洲精品18p| 亚洲超丰满肉感bbw| 久久精品三级| 国产高中女学生第一次| 在线亚洲欧美专区二区| 黄色网页在线免费看| 成人一区二区视频| 久久你懂得1024| 玖玖爱视频在线| 日韩欧美一级在线播放| 在线视频cao| 亚洲片区在线| 国产精品不卡视频| 狠狠色狠狠色综合日日tαg| 懂色av成人一区二区三区| 精品手机在线视频| 国产青草视频在线观看| 91久久久亚洲精品| 激情av网站| 伊甸园亚洲一区| 亚洲一本视频| 乳奴隷乳フ辱julia在线观看| 欧美xxxxx视频| 亚洲精品国产偷自在线观看| 91日韩在线| 亚欧色一区w666天堂| www.涩涩涩| 新版中文字幕在线资源| gogo大尺度成人免费视频| 色婷婷一区二区三区av免费看| 中文成人综合网| 亚洲香蕉伊在人在线观| 国产成人免费在线观看| 国产黄色小视频| 在线一区二区视频| 4438x亚洲最大成人网| 在线视频国产日韩| aaa毛片在线观看| 亚洲va韩国va欧美va精四季| 91精品国产综合久久香蕉| 久久91视频| 波多野结衣家庭主妇| 污视频免费在线看| 日韩在线一级片| 亚洲一区二区欧美激情| aaa日本高清在线播放免费观看| 欧美一区二区三区公司| 一区二区三区在线播| 成全视频在线播放大地| a级片在线观看| 蜜桃视频一区二区三区在线观看| 污污视频在线| 中文字幕一区二区三区在线不卡| 免费观看欧美大片| 亚洲精品中文字幕乱码三区91| 97视频久久久| 日本新janpanese乱熟| 国内精品视频一区二区三区八戒| 日本国产一区二区| 日韩久久精品一区| 欧美色手机在线观看| 国产精品视频区| 久久久久无码精品国产sm果冻| 久久久一区二区| 自拍亚洲图区| 一区二区三区在线视频观看58| 久热在线视频精品网站| 中文字幕视频在线免费| 丁香激情视频| 老师让我她我爽了好久视频| 国产三级精品三级在线专区| 亚洲乱亚洲乱妇无码| 日韩专区精品| 伊人久久中文字幕| 欧美牲交a欧美牲交aⅴ免费下载| 国产成人激情av| 中文天堂在线视频| 乱精品一区字幕二区| 国产探花视频在线| 一二三四在线观看免费高清中文在线观看| 精品福利av| 久久综合伊人77777| 国模吧一区二区三区| 久久成人国产精品入口| 国产精品免费一区二区三区都可以| 91在线色戒在线| 日韩欧美中文字幕在线播放| 中文字幕有码在线视频| 欧美欧美黄在线二区| 中文字幕无线码一区| 日本三级免费网站| 久久国产露脸精品国产| 国产视频一二三| 97成人免费视频| 国产又粗又长免费视频| 美女网站视频黄色| 精品动漫一区二区| 91在线网站视频| 日精品一区二区三区| 免费日本黄色|