最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用PageHelper插件實現(xiàn)Service層分頁

 更新時間:2022年04月22日 08:47:58   作者:Keson Z  
這篇文章主要為大家詳細介紹了使用PageHelper插件實現(xiàn)Service層分頁,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了使用PageHelper插件實現(xiàn)Service層分頁的具體代碼,供大家參考,具體內(nèi)容如下

使用場景:

平時分頁我們可以直接使用mybatis-plus中內(nèi)置的IPage進行分頁,一般是在mapper中寫好接口,在執(zhí)行sql時就將其進行分頁操作,但是有些復雜的查詢或者是需要拼接返回格式的數(shù)據(jù)就難以操作了,所以我們使用PageHelper插件來實現(xiàn)Service分頁功能。

1.在pom.xml文件中導入PageHelper插件依賴

<!--pagehelper分頁插件-->
<dependency>
? ? <groupId>com.github.pagehelper</groupId>
? ? <artifactId>pagehelper</artifactId>
? ? <version>4.1.6</version>
</dependency>

2.編寫PageHelper配置類

package com.cdtye.itps.jjxt.config;
import java.util.Properties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import com.github.pagehelper.PageHelper;

/**
?* @Author Zhongks
?* @Description //TODO 分頁配置對象
?* @Date 14:47 2021/4/23
?* @Param
?* @return
?**/
@Configuration
public class PageHelperConfiguration {
?? ?/**
?? ? * @Author Zhongks
?? ? * @Description //TODO 分頁對象實列化
?? ? * @Date 15:49 2021/4/23
?? ? * @Param []
?? ? * @return com.github.pagehelper.PageHelper
?? ? **/
?? ?@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", "Oracle");
?? ??? ?pageHelper.setProperties(p);
?? ??? ?return pageHelper;
?? ?}
}

3.在Service層進行分頁操作:

/**
? ? ?* @Author Zhongks
? ? ?* @Description //TODO 列表頁面顯示
? ? ?* @Date 18:42 2021/4/22
? ? ?* @Param []
? ? ?* @return java.util.List<java.util.Map<java.lang.String,java.lang.Object>>
? ? ?**/
? ? public PageInfo<Map<String, Object>> getList(BureauNoticeVo vo){
? ? ? ? if(vo.getPage()!=null&&vo.getSize()!=null){
? ? ? ? ? ? //設置頁碼數(shù)以及一頁顯示數(shù)量
? ? ? ? ? ? PageHelper.startPage(vo.getPage(),vo.getSize());
? ? ? ? }
? ? ? ? //自己發(fā)布的或者下發(fā)單位中含有當前登入人單位編碼的才能看
? ? ? ? List<Map<String, Object>> bureauNoticeList = bureauNoticeMapper.getList(vo,AuthHelper.loginUser().getUnitDeptCode());
? ? ? ? bureauNoticeList.forEach(map->{
? ? ? ? ? ? //得到下發(fā)單位信息集合
? ? ? ? ? ? List<String> deptNameList = bureauNoticeAcceptService.getBureauNoticeAcceptAndDeptByNoticeId((String) map.get("id"));
? ? ? ? ? ? map.put("deptNameList",deptNameList);
? ? ? ? ? ? //得到附件信息集合
? ? ? ? ? ? map.put("fileList",this.getFileList((String) map.get("id")));
? ? ? ? });
? ? ? ? //將需要進行分頁的list傳入Pagehelper實現(xiàn)分頁
? ? ? ? PageInfo<Map<String, Object>> pageInfo = new PageInfo(bureauNoticeList);
? ? ? ? return pageInfo;
? ? }

4.查詢類Vo:

@ApiModel("")
@Getter
@Setter
public class BureauNoticeVo extends BaseVo {

? ? @ApiModelProperty(value = "開始時間")
? ? private String startDate;

? ? @ApiModelProperty(value = "開始時間")
? ? private String endDate;

? ? @ApiModelProperty(value = "描述")
? ? private String noticeDescription;

? ? @ApiModelProperty(value = "頁碼")
? ? private Integer page;

? ? @ApiModelProperty(value = "頁顯示數(shù)")
? ? private Integer size;

}

5.接口返回數(shù)據(jù):

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • JDK動態(tài)代理之ProxyGenerator生成代理類的字節(jié)碼文件解析

    JDK動態(tài)代理之ProxyGenerator生成代理類的字節(jié)碼文件解析

    這篇文章主要為大家詳細介紹了JDK動態(tài)代理之ProxyGenerator生成代理類的字節(jié)碼文件,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-02-02
  • ReentrantLock源碼詳解--公平鎖、非公平鎖

    ReentrantLock源碼詳解--公平鎖、非公平鎖

    ReentrantLock重入鎖,是實現(xiàn)Lock接口的一個類,也是在實際編程中使用頻率很高的一個鎖,表示能夠?qū)蚕碣Y源能夠重復加鎖,即當前線程獲取該鎖再次獲取不會被阻塞。下面我們來深入了解一下它吧
    2019-06-06
  • java讀取文件顯示進度條的實現(xiàn)方法

    java讀取文件顯示進度條的實現(xiàn)方法

    當讀取一個大文件時,一時半會兒無法看到讀取結果,就需要顯示一個進度條,是程序員明白已經(jīng)讀了多少文件,可以估算讀取還需要多少時間,下面的代碼可以實現(xiàn)這個功能
    2014-01-01
  • SpringBoot整合XxlJob分布式任務調(diào)度平臺

    SpringBoot整合XxlJob分布式任務調(diào)度平臺

    xxl-job是一個開源的分布式定時任務框架,它可以與其他微服務組件一起構成微服務集群。它的調(diào)度中心(xxl-job)和執(zhí)行器(自己的springboot項目中有@XxlJob("定時任務名稱")的方法)是相互分離,分開部署的,兩者通過HTTP協(xié)議進行通信
    2023-02-02
  • CentOS 7快速安裝jdk

    CentOS 7快速安裝jdk

    這篇文章主要為大家詳細介紹了CentOS 7快速安裝jdk的相關資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-07-07
  • Java基礎之Integer使用的注意事項及面試題

    Java基礎之Integer使用的注意事項及面試題

    這篇文章主要給大家介紹了關于Java基礎之Integer使用注意事項及面試題的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧。
    2017-12-12
  • Java獲取兩個集合List的交集、補集、并集(相加)和差集(相減)的不同方式

    Java獲取兩個集合List的交集、補集、并集(相加)和差集(相減)的不同方式

    這篇文章主要給大家介紹了關于Java獲取兩個集合List的交集、補集、并集(相加)和差集(相減)的不同方式,在一般操作中對于list集合取交集、差集、并集,比較簡單,需要的朋友可以參考下
    2023-08-08
  • java底層JDK?Logging日志模塊處理細節(jié)深入分析

    java底層JDK?Logging日志模塊處理細節(jié)深入分析

    這篇文章主要為大家介紹了java底層JDK?Logging日志模塊處理細節(jié)深入分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-03-03
  • SpringBoot中配置Redis連接池的完整指南

    SpringBoot中配置Redis連接池的完整指南

    這篇文章主要為大家詳細介紹了SpringBoot中配置Redis連接池的完整指南,文中的示例代碼講解詳細,具有一定的借鑒價值,感興趣的小伙伴可以跟隨小編一起學習一下
    2025-04-04
  • jdk8使用stream實現(xiàn)兩個list集合合并成一個(對象屬性的合并)

    jdk8使用stream實現(xiàn)兩個list集合合并成一個(對象屬性的合并)

    本文主要介紹了jdk8使用stream實現(xiàn)兩個list集合合并成一個(對象屬性的合并),文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-01-01

最新評論

张掖市| 涞源县| 崇阳县| 拜城县| 盐城市| 女性| 濮阳县| 灌南县| 秦安县| 临江市| 万源市| 石河子市| 新宁县| 格尔木市| 石城县| 凤山县| 舟山市| 岳阳市| 永仁县| 凤山市| 顺义区| 方山县| 辽中县| 天台县| 平湖市| 调兵山市| 遂川县| 磐安县| 铜陵市| 崇明县| 三明市| 昌邑市| 滕州市| 连城县| 白山市| 明水县| 鄂尔多斯市| 冷水江市| 瓮安县| 鹤壁市| 阜南县|