校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁(yè) > 知識(shí)庫(kù) > Oracle使用MyBatis中RowBounds實(shí)現(xiàn)分頁(yè)查詢功能

Oracle使用MyBatis中RowBounds實(shí)現(xiàn)分頁(yè)查詢功能

熱門標(biāo)簽:汽車4s店百度地圖標(biāo)注店 網(wǎng)貸外呼系統(tǒng)合法嗎 手機(jī)地圖標(biāo)注門店 安陽(yáng)企業(yè)電銷機(jī)器人供應(yīng)商 鶴壁電話機(jī)器人價(jià)格 電銷套路機(jī)器人 杭州網(wǎng)絡(luò)外呼系統(tǒng)運(yùn)營(yíng)商 地圖標(biāo)注坐標(biāo)圖標(biāo) 地圖標(biāo)注效果的制作

Oracle中分頁(yè)查詢因?yàn)榇嬖趥瘟衦ownum,sql語句寫起來較為復(fù)雜,現(xiàn)在介紹一種通過使用MyBatis中的RowBounds進(jìn)行分頁(yè)查詢,非常方便。

使用MyBatis中的RowBounds進(jìn)行分頁(yè)查詢時(shí),不需要在 sql 語句中寫 offset,limit,mybatis 會(huì)自動(dòng)拼接 分頁(yè)sql ,添加 offset,limit,實(shí)現(xiàn)自動(dòng)分頁(yè)。

需要前臺(tái)傳遞參數(shù)currentPage和pageSize兩個(gè)參數(shù),分別是當(dāng)前頁(yè)和每頁(yè)數(shù)量,controller層把參數(shù)傳遞給service層即可,下面是service實(shí)現(xiàn)的代碼:

package com.xyfer.service.impl;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.apache.ibatis.session.RowBounds;
import com.xyfer.dao.UserDao;
import com.xyfer.service.UserService;
public class UserServiceImpl implements UserService {
  private UserDao userDao;
  @Override
  public MapString, Object> queryUserList(String currentPage, String pageSize) {
    //查詢數(shù)據(jù)總條數(shù)
    int total = userDao.queryCountUser();
    //返回結(jié)果集
    MapString,Object> resultMap = new HashMapString,Object>();
    resultMap.put("total", total);
    //總頁(yè)數(shù)
    int totalpage = (total + Integer.parseInt(pageSize) - 1) / Integer.parseInt(pageSize);
    resultMap.put("totalpage", totalpage);
    //數(shù)據(jù)的起始行
    int offset = (Integer.parseInt(currentPage)-1)*Integer.parseInt(pageSize);
    RowBounds rowbounds = new RowBounds(offset, Integer.parseInt(pageSize));
    //用戶數(shù)據(jù)集合
    ListMapString, Object>> userList = userDao.queryUserList(rowbounds);
    resultMap.put("userList", userList);
    return resultMap;
  }
}

dao層接口:

package com.xyfer.dao;
import java.util.List;
import java.util.Map;
import org.apache.ibatis.session.RowBounds;
public interface UserDao {
  public int queryCountUser();    //查詢用戶總數(shù)
  public ListMapString, Object>> queryUserList(RowBounds rowbounds);  //查詢用戶列表
}

對(duì)應(yīng)的mapper.xml文件:

?xml version="1.0" encoding="UTF-8" ?>
!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
mapper namespace="com.xyfer.mapper.UserMapper">
  !-- 查詢用戶總數(shù) -->
  select id="queryCountUser" resultType="java.lang.Integer">
    select count(1) from user
  /select>
  !-- 查詢用戶列表 -->
  select id="queryUserList" resultType="java.util.Map">
    select * from user
  /select>
/mapper>

通過postman調(diào)用接口,傳入對(duì)應(yīng)的參數(shù),即可實(shí)現(xiàn)分頁(yè)查詢數(shù)據(jù)。

總結(jié)

以上所述是小編給大家介紹的Oracle使用MyBatis中RowBounds實(shí)現(xiàn)分頁(yè)查詢功能,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
如果你覺得本文對(duì)你有幫助,歡迎轉(zhuǎn)載,煩請(qǐng)注明出處,謝謝!

您可能感興趣的文章:
  • mybatis中查詢結(jié)果為空時(shí)不同返回類型對(duì)應(yīng)返回值問題
  • 結(jié)合mybatis-plus實(shí)現(xiàn)簡(jiǎn)單不需要寫sql的多表查詢
  • mybatis 實(shí)現(xiàn) SQL 查詢攔截修改詳解
  • 詳解MyBatis模糊查詢LIKE的三種方式
  • MyBatis帶參查詢的方法詳解

標(biāo)簽:河源 焦作 南陽(yáng) 銀川 泰安 梧州 柳州 酒泉

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Oracle使用MyBatis中RowBounds實(shí)現(xiàn)分頁(yè)查詢功能》,本文關(guān)鍵詞  Oracle,使用,MyBatis,中,RowBounds,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Oracle使用MyBatis中RowBounds實(shí)現(xiàn)分頁(yè)查詢功能》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于Oracle使用MyBatis中RowBounds實(shí)現(xiàn)分頁(yè)查詢功能的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 武城县| 东乡县| 揭东县| 利津县| 环江| 丰县| 包头市| 海宁市| 监利县| 汶川县| 湘潭县| 北安市| 万宁市| 北宁市| 贡嘎县| 广饶县| 弋阳县| 工布江达县| 招远市| 黄平县| 开鲁县| 静乐县| 峨眉山市| 杭锦旗| 乌兰察布市| 五峰| 双辽市| 旬阳县| 安泽县| 丁青县| 乌兰县| 曲松县| 鹤山市| 胶州市| 北辰区| 石渠县| 淮滨县| 东乌珠穆沁旗| 行唐县| 化州市| 永胜县|