SpringBoot实现分页插件

SpringBoot实现分页插件
SpringBoot实现分页插件

实现分页插件的具体步骤:

1.导入jar包

com.github.pagehelper

pagehelper-spring-boot-starter

1.2.5

org.springframework.boot

spring-boot-starter-test

test

2.(两种)在application.yml(propreties)文件加上

第一种:yml

pagehelper:

helper-dialect: mysql

reasonable: true

support-methods-arguments: true

params: count=countSql

第二种:propreties

pagehelper.helper-dialect=mysql

pagehelper.reasonable=true

pagehelper.support-methods-arguments=true

pagehelper.params=count=countSql

3.在controller控制层编写代码

@GetMapping("/getAllPerson")

public String getAllPerson(Model model,@RequestParam(defaultValue="1",value ="pageNum") Integer pageNum,

String singleName){

PageHelper.startPage(pageNum,2); //设置当前页码,每页的行数

Listlist=aaService.getAllPerson(singleName); //查询的集合

PageInfopageInfo=new PageInfo(list); //把查询的集合放入pageInfo返回给页面

model.addAttribute("pageInfo",pageInfo);

model.addAttribute("name",singleName);

return"index";

}

4.编写页面

当前页,总

th:text="${pageInfo.pages}">页,共条记录

首页

上一页

下一页

尾页

5.运行

总结

使用分页插件无需创建page类,也不用在查询语句中写limit

C#(.net)分页控件源码(已测试)

分页控件的用法 align类: using System; namespace MyPaperControls { ///

/// Align 的摘要说明。 /// public enum Align { Center = 0, Left = 1, Right = 2 } } MyPager类: using System; using https://www.360docs.net/doc/117694101.html,ponentModel; using System.Diagnostics; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.HtmlControls; using System.Resources; using System.Collections; using System.Collections.Specialized; using System.Text; using System.Text.RegularExpressions; using System.Drawing; using https://www.360docs.net/doc/117694101.html,pilerServices; using MyPaperControls.Designer; [assembly:TagPrefix("MyPaperControls", "MP")] namespace MyPaperControls { [ ToolboxData("<{0}:MyPaper runat=server>"), ValidationPropertyAttribute("Text"), Designer(typeof(MyPaperControls.Designer.MyPaperDesigner)), DescriptionAttribute("跳转到此页面") ] [ParseChildren(true)]

VS2010+自带分页实现及操作

VS2010 自带分页实现及操作 这里以一个简单的签到系统为例子进行讲解。 先看一下,假设你已经设计好的初始页面,其中填写原因是对点击此条记录进行修改。 图1-1 上图中可以看到已经设置了分页,分页具体设置如下:选择gridview的属性,开启自动分页。 图1-2

然后在gridview的事件里选择分页的事件:如图1-3,可以直接双击就可以。 图1-3

点击填写原因就是报错,下标越界的提示。

这样就解决了第二页下标越界的问题了。 最后遗留的问题是:填写了迟到原因返回后要去到达修改前的那一页。 1.我首先可以在点击填写原因的时候获得当前页的索引int iPageIndex = gvAttend.PageIndex; //获取当前页的索引 2.然后把此ipageIndex一起传到修改页面去。 String URLString= String.Format("FillReason.aspx?WorkDate={0}&CardId={1}&AttendTime={2}&LateReason={ 3}&iPageIndex={4}", WorkDate, cardid, AttendTime, LateReason, iPageIndex); 3.得到修改后以后,再把此ipageIndex传回的修改前的页面。当前页接收 此ipageIndex后,赋值个gridview的pageindex。 int pageindex = Convert.ToInt32(Request.QueryString["pageindex"]); gvAttend.PageIndex=pageindex; 以上所有操作就完成了,vs2010自带分页及操作的功能。

Bootstrap组件功能:路径组件、分页组件、标签组件和徽章组件

https://www.360docs.net/doc/117694101.html, Bootstrap组件功能:路径组件、分页组件、标签组件和徽章组件 本节课我们主要学习一下Bootstrap的四个组件功能:路径组件、分页组件、标签组件和徽章组件。 一.路径组件 路径组件也叫做面包屑导航。 //面包屑导航

  • 首页
  • 产品列表
  • 韩版2015年羊绒毛衣 二.分页组件 分页组件可以提供带有展示页面的功能。 //默认分页
  • «
  • 1
  • 2
  • 3
  • 4
  • 5
  • https://www.360docs.net/doc/117694101.html,

  • »
  • //首选项和禁用 1 2 //设置尺寸,四种lg、默认、sm和xs //翻页效果
  • 上一页
  • 下一页
  • //对齐翻页链接 上一页 下一页 //翻页项禁用 上一页 三.标签 //在文本后面带上标签

    SpringBoot实现分页插件

    实现分页插件的具体步骤: 1.导入jar包 com.github.pagehelper pagehelper-spring-boot-starter 1.2.5 org.springframework.boot spring-boot-starter-test test 2.(两种)在application.yml(propreties)文件加上 第一种:yml pagehelper: helper-dialect: mysql reasonable: true support-methods-arguments: true params: count=countSql 第二种:propreties pagehelper.helper-dialect=mysql pagehelper.reasonable=true pagehelper.support-methods-arguments=true pagehelper.params=count=countSql 3.在controller控制层编写代码 @GetMapping("/getAllPerson") public String getAllPerson(Model model,@RequestParam(defaultValue="1",value ="pageNum") Integer pageNum, String singleName){ PageHelper.startPage(pageNum,2); //设置当前页码,每页的行数 Listlist=aaService.getAllPerson(singleName); //查询的集合 PageInfopageInfo=new PageInfo(list); //把查询的集合放入pageInfo返回给页面 model.addAttribute("pageInfo",pageInfo); model.addAttribute("name",singleName); return"index"; } 4.编写页面 当前页,总页,共条记录 首页 上一页 下一页 尾页

    分页的实现步骤

    为什么需要分页? 1.从客户角度来讲,数据内容过多,查看数据非常不便。 2.从服务器和网络的角度来讲,查这么多数据,传输这么多数据,是一种效率很低的做法。分页的核心SQL: 最简单最原始的分页: 分页的简单过程: 用户点击第一页传递一个参数:Num=1到后台,服务器获取num=1将该参数传到Dao 中,dao中:select * from tb_article where id>10 limit ?,?;, ps.setint((num-1)*10),返回一个List,传递到jsp中进行显示,发送给客户端。 1.

    2.

    3.访问:channel.jsp,然后点击在下面的页号导航即可看到简单的分页效果。 首页上一页1,2,3,4,5,6,7,8,9,10 下一页末页共101页 分页的实现原理: 1.获得需要显示的总的记录数rowCount—》从数据库中取 2.设定每页最多显示的记录数size—》10 3.指定显示的页码:num →作为参数得到 4.所要显示的数据对象→根据startRow和size从数据库中查出! 5.根据rowCount,size,num可计算出其余的元素: a)本页面从第几个记录开始:startRow = (this.num-1) * size; b)共有多少页:pageCount = (int) Math.ceil((double)rowCount/size); c)list:包含了所要显示的数据对象的集合 d)下一页:next=Math.min( this.pageCount, this.num+1) e)上一页:prev = Math.max(1 , this.num-1) f)页号控制元素: numCount:每页最多显示多少页号。(一共显示numCount+1个页号) start = Math.max(this.num-numCount/2, first); //本页显示页号从多少页开始 end = Math.min(start+numCount, last); //本页显示页号在多少页结束 页号控制: if(end-start < numCount){ //当本页总显示的页号数不够numCount时,如何计算起始页号。 start = Math.max(end-numCount, 1); } 分页实现步骤 Pagenation工具类代码:

    JPAGES分页控件案例

    //需要导入的样式表,与js文件 /** *css *jPages.css控制分页按钮条的样式,不需要样式的可以不用导入 *animate.css控制要显示的数据的动画效果,不需要动画可以不用导入 *github.css这个不知道是搞什么的,不导入也没发现改变了什么 *js文件jPages.js和jquery肯定是必须的,其他的就看自己了 */ Js代码: $("#tbody").empty();//删除tbody中已经存在的数据 var str=""; $.ajax({ url:'jq/getShipInfoByShipName.action', data:{"shipName":$("#shipNameId").val()},//执行后台Action参数 dataType:'json', type:'post', //回调函数执行之前的动作 beforeSend:function(){ //这是我设置的一个加载中的图标,trShow为图标显示的行 //在数据加载出来之前,显示加载中这个图标,加载完成,隐藏 $('#trShow').css("display","block"); }, success:function(data){ var result=data; //返回数据位json格式,遍历json,拼凑成table中的行 for(var i=0;i"+result[i].shipName+" "+result[0].remark+""; } //追加如tbody中 $("#tbody").append(str);

    MyBatis自动分页实现

    MyBatis自动分页实现 2013-08-16 近两天一直再研究MyBatis的分页问题,看了别人的处理方式,自己总结优化了一下,写了两个拦截类,给有需要的人使用和参考,源码请下载附件。 主要有3个类:Page,MybatisPageInterceptor,MybatisSpringPageInterceptor Page:作为分页对象,有:pageNo、pageSize、totalRecord、totalPage、results属性 MybatisPageInterceptor和MybatisSpringPageInterceptor: 均为拦截类,仅需要选用其中的一个,前者在任何情况下都可用,后再仅在Spring环境下使用。 推荐使用后者,其优点是使用后无需对mapper的XML文件作任何修改,只需要修改Mapper 类的方法,增加一个Page类型的参数即可。而前者使用时有可能会需要修改XML,特别是原Mapper方法只有一个参数时,需要增加@Param指定参数名,而后修改XML文件使用该参数名。 以下给出在Spring环境下的配置使用方法示例: MybatisSpringPageInterceptor: 修改Spring配置文件 Java代码 1. 2. 3. 4. 5.

    GridView控件自定义分页详解

    GridView控件自定义分页详解 在这里我们将用一个隐藏字段来保存这个PageIndex,即当前页码.当点击上一页时,将它的值减一,知道为0,要注意的一点这里的第一页页码是0而不是1.下面看看代码,然后我们再分析分析! 1 2 3 4 6 7 9 10 11

    12 13 首页 14 上一页 15 下一页 16 尾页 17
    CS文件中的代码: 1 protected void PagerButton_Click(object sender, EventArgs e) 2 { 3 int pageIndx = Convert.ToInt32(CurrentPage.Value); 4 int totals = NewsManager.GetNews(0, pageSize).TotalRecords; 5 int pages = (totals % pageSize) == 0 ? (totals / pageSize) : (totals / pageSize + 1); 6 string arg = ((LinkButton)sender).CommandArgument.ToString().ToLower(); 7 switch (arg) 8 { 9 case "prev": 10 if (pageIndx > 0) 11 { 12 pageIndx -= 1; 13 } 14 break; 15 case "next": 16 if (pageIndx < pages - 1)

    winform中DataGridView实现分页功能

    winform中DataGridView实现分页功能 在winform的设计中,要实现对DataGridView控件的分页功能,需要两个控件:BindingSource、BindingNavigator,根据需求可对BindingNavigator进行自由的扩展,下图的示例则是根据一般需求对分页功能的实现。红色区域是对BindingNavigator控件扩展后的效果。 具体实现过程: //窗体构造方法中定义分页所需变量: int pageSize = 0; //每页显示行数 int nMax = 0; //总记录数 int pageCount = 0; //页数=总记录数/每页显示行数 int pageCurrent = 0; //当前页号 int nCurrent = 0; //当前记录行 DataTable dtInfo = new DataTable(); //存取查询数据结果 //分页功能实现

    public void InitDataSet() { //判断每页显示记录数是否为空,在初始话窗体时为真 if (txtRecordNumOfPage.Text.Trim() == "") { try { //pageSize = Convert.ToInt16(ConfigurationManager.AppSettings["PageSize"]); //设置页面行数 //读取配置文件中设置的每页显示条数 string szConfigFileName = Application.ExecutablePath + ".config"; XmlDocument doc = new XmlDocument(); doc.Load(szConfigFileName); XmlNode root = doc.SelectSingleNode("configuration"); XmlNode node = root.SelectSingleNode("appSettings/add[@key='PageSize']"); XmlElement el = node as XmlElement; pageSize = Convert.ToUInt16(el.GetAttribute("value")); } catch { } if (pageSize == 0) {

    分页的实现原理,分页的实现步骤

    分页的实现原理: 1.获得需要显示的总的记录数rowCount—》从数据库中取 2.设定每页最多显示的记录数size—》10 3.指定显示的页码:num 作为参数得到 4.根据rowCount,size,num可计算出其余的元素: a)本页面从多少行记录开始:startRow = (this.num-1) * size ; b)共有多少页:pageCount = (int) Math.ceil((double)rowCount/size); c)下一页:next=Math.min( this.pageCount, this.num+1) d)上一页:prev = Math.max(1 , this.num-1) e)页号控制元素: numCount:每页最多显示多少页号。(一共显示numCount+1个页号) start = Math.max(this.num-numCount/2, first); //本页显示页号从多少页开始 end = Math.min(start+numCount, last); //本页显示页号在多少页结束 页号控制: if(end-start < numCount){ //当本页总显示的页号数不够numCount时,如何计算起始页号。 start = Math.max(end-numCount, 1); } 分页实现步骤: 1.将Page类引入。需要自己修改的可自行修改。 package com.puckasoft.video.util; public class Page { private int num; //当前页号, 采用自然数计数 1,2,3,... private int size; //页面大小:一个页面显示多少个数据 private int rowCount;//数据总数:一共有多少个数据 private int pageCount; // 页面总数 private int startRow;//当前页面开始行, 第一行是0行 private int first = 1;//第一页页号 private int last;//最后页页号 private int next;//下一页页号 private int prev;//前页页号 private int start;//页号式导航, 起始页号 private int end;//页号式导航, 结束页号 private int numCount = 10;//页号式导航, 最多显示页号数量为numCount+1;这里显示11页。 public Page(int size, String str_num, int rowCount) { int num = 1; if (str_num != null) { num = Integer.parseInt(str_num);

    js多功能分页组件layPage使用方法详解

    这篇文章主要为大家详细分享了laypage分页控件使用实例,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 本文的主要目的就是为大家分享layPage 多功能的js分页组件具体操作方法,供大家参考,具体内容如下 php 部分 function index(){   header('Content-Type:text/html;charset=utf-8');   // 获取当前页码,默认第一页,设置每页默认显示条数   $nowpage = I('get.page', 1, 'intval');   $limits = 8;   // 获取总条数   $count = M('Article') -> where(array('status'=>array('egt', 0))) -> count();   // 计算总页面   $allpage = ceil($count / $limits);   $allpage = intval($allpage);   $lists = M('Article') -> where(array('status'=>array('egt', 0)))           -> page($nowpage, $limits) // page 方法分页          -> order('createtime desc')           -> select();   // 跳转分页输出   $this -> assign('lists', $lists);   $this -> assign('allpage', $allpage);   $this -> assign('nowpage', $nowpage);   $this->display();   /*   // ajax 分页输出   $info = array('lists'=>$lists,'allpage'=>$allpage,'nowpage'=>$nowpage);   $this->ajaxReturn($info,'json');   */  } js 中laypage(新版本) 跳转分页 // 分页 laypage({   cont: 'show_pages', // 分页容器   pages: "{$allpage}",   // 总页数   skip: true, //是否开启跳页   curr: function(){     var page = "{$nowpage}"; // 当前页(后台获取到的)     return page ? page : 1; // 返回当前页码值   }(),   jump: function(e, first){ //触发分页后的回调(单击页码后)     if(!first){ //一定要加此判断,否则初始时会无限刷新

    基本分页存储管理的模拟实现

    基本分页存储管理的模拟实现 学院 专业 学号 学生姓名 指导教师姓名 2014年03月18日 目录

    一、设计目的与内容 二、各个功能模块 三、主要功能模块流程图 四、系统测试 五、结论 六、源程序及系统文件使用说明 一、设计目的与内容 设计的目的: 操作系统课程设计是计算机专业重要的教学环节, 它为学生提供了一个既动手又动脑, 将课本上的理论知识和实际有机的结合起来, 独立分析和解决实际问题的机会。 1. 进一步巩固和复习操作系统的基础知识。 2. 培养学生结构化程序、模块化程序设计的方法和能力。 3. 提高学生调试程序的技巧和软件设计的能力。 4. 提高学生分析问题、解决问题以及综合利用C 语言进行程序设计的能力。 设计内容: 根据设计要求实现对基本分页存储管理的模拟 设计要求:

    1. 2. 进程名, 进程所需页数, 也 可从文件读出。 3. 况。 所采用的数据结构: typedef struct LNode{ int f; //进程号 char name[8]; //进程名 int size; //进程大小 int n; //进程页数 int ye[100]; //页表,下标表示页号, 内容表示进程各页所在物理块 struct LNode *next; }LNode,*LinkList; 二、各个功能模块 主要功能模块流程图

    四、系统测试 主界面: (显示程序的各个功能块)1、选择1, 运行界面如下:

    (选择1, 输入进程名, 显示内存物理块分配情况) 2、选择2, 运行界面如下: (显示2回收进程, 若进程名输入错误, 则显示进程不存在, )3、选择3, 运行界面如下:

    Bootstrap Paginator分页插件与ajax相结合实现动态无刷新分页效果

    这篇文章主要介绍了Bootstrap Paginator分页插件与ajax相结合实现动态无刷新分页效果,非常不错,具有参考借鉴价值,感兴趣的朋友一起看下吧 Bootstrap Paginator分页插件下载地址: DownloadVisit Project in GitHub 1.这是需要分页的页面放的js函数: <span style="font-size:14px;">function paging(page){  $.ajax({  type: "GET",  url: "${ctx}/api/v1/user/1/"+(page-1)+"/5",  dataType:"json",  success: function(msg){  ....//省略(查询出来数据)  }  });  $.ajax({  type: "GET",  url:"${ctx}/api/v1/user/count/1",  dataType:"json",  success:function(msg){  var pages = Math.ceil(msg.data/5);//这里data里面有数据总量  var element = $('#pageUl');//对应下面ul的ID  var options = {  bootstrapMajorVersion:3,  currentPage: page,//当前页面  numberOfPages: 5,//一页显示几个按钮(在ul里面生成5个li)  totalPages:pages //总页数  }  element.bootstrapPaginator(options);  }  });  }</span>  页面: <span style="font-size:14px;"><ul class="pagination" id="pageUl">  </ul></span> *li里面自动生成的 2.最重要也是最核心的是要自己改下bootstrap-paginator.js源文件,如下: <span style="font-size:14px;">onPageClicked: function (event, originalEvent, type, page) {  //show the corresponding page and retrieve the newly built item related to the page clicked before for the event return  var currentTarget = $(event.currentTarget);  switch (type) { 

    jquery分页插件_可随意改变样式

    1.JQpage源码 /** *pluginname:JQpage *version1.0 *authoryqm *企鹅:2-3-8-7-5-0-3-1-0-6 *time:2015-12-8 *Explain:在一次项目开发中,前期项目使用了easyui,但是客户比较BT,说easyui的datagrid太丑!!于是没办法只有自己写一个分页, *但是又不想改变后台java代码,所以就以easyui的datagrid后台返回格式数据,写了一个前端的jquery分页插件。 *本插件主要立足于尽可能的满足所有表格样式需求,所以完全可以自己定制你想要的所有样式,绝对兼容easyui返回的后端json数据,然后又能完美的扩展其它组件, *皆可以自定义做所有你能想到的事情,目前版本提供的是一个较为基础的分页版本,相信有一定js基础的人,都能很方便的扩展。 * *该插件放到网络上分享给大家,若是大家有更好的建议,或者对插件做了变更,希望你能把变更并且优秀的代码也分享给我,大家一起学习完善 *有需要帮助的同学也可以Q我 * */ var StringBuffer = function(){ this._strings = new Array(); }; StringBuffer.prototype.append=function(str){ this._strings.push(str); returnthis; }; StringBuffer.prototype.toString=function(){ returnthis._strings.join(""); }; var JQpage = function(){ this.page=1;//起始页 this.rows=10;//每页显示的行数 this.url=null;//获取远程数据的地址 this.params='';//远程访问的参数,可直接使用$('#form').serialize() this.tableTarget=null;//表格,带选择符 this.pageTarget=null;//分页控制区域,带选择符 this.data=null;//分页数据 this.fields=null;//所有字段 this.rowColor=['#FFF','#F7F8FA'];//隔行换色的两种颜色

    php实现简单的分页功能

    大家在浏览网页的时候,都会看到每篇文章都会会显示“上一页”“下一页”。下面跟大家分享一下如何用php实现简单的分页功能。 首先,先创建一个mysql表: SET FOREIGN_KEY_CHECKS=0; -- ---------------------------- -- Table structure for `test` -- ---------------------------- DROP TABLE IF EXISTS `test`; CREATE TABLE `test` ( `id` int(5) NOT NULL AUTO_INCREMENT, `name` varchar(50) CHARACTER SET utf8 NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=latin1; 然后在里面插入数据: -- ---------------------------- -- Records of test -- ---------------------------- INSERT INTO `test` VALUES ('1', '张三'); INSERT INTO `test` VALUES ('2', '李四'); INSERT INTO `test` VALUES ('3', '王五'); INSERT INTO `test` VALUES ('4', '赵六');

    INSERT INTO `test` VALUES ('5', '阿萨达'); INSERT INTO `test` VALUES ('6', '回火'); INSERT INTO `test` VALUES ('7', 'adada'); 然后新建一个php文件,连接数据库: header("content-type:text/html;charset=UTF-8");//防止页面乱码$link = mysql_connect("localhost","root","") or die("数据库连接失败"); $result = mysql_select_db("test",$link); mysql_query("SET NAMES 'utf8'");//设置数据库连接编码 然后调取数据,并且计算出该表里面总共有多少条数据: function selectdata(){ $sql = "SELECT name FROM `test` ORDER BY id desc"; $arr = array(); $result = mysql_query($sql); while ($array = mysql_fetch_row($result)) { $arr[] = $array; } return $arr; } function selectdatabypages($limit1,$limit2){ $sql = "SELECT name FROM `test` ORDER BY id desc LIMIT $limit1,$limit2";

    基于jQuery 常用控件收集

    Horizontal accordion: jQuery 基于jQuery开发,非常简单的水平方向折叠控件。 Horizontal accordion: jQuery jQuery-Horizontal Accordion 具有XBOX360 blade界面风格的水平方向Accordion。 jQuery-Horizontal Accordion AutoComplete-JQuery jQuery插件易于集成到现在的表单中(Form)。 AutoComplete-JQuery Facebook like Autocomplete 基于jQuery开发,类似于FaceBoox提供的AutoCompleter。 Facebook like Autocomplete jQuery Autocomplete Mod jQuery Autcomplete插件。能够限制下拉菜单显示的结果数。 jQuery Autocomplete Mod jqac 基于Jquery开发的Autocomplete插件。具有易于使用,配置简单,既可以利用Ajax读取数据也可以直接从本地获取数据。 jqac jQuery Tag Suggestion 类似于https://www.360docs.net/doc/117694101.html,提供的tag suggesting功能。 jQuery Tag Suggestion Autocomplete-jQuery ajax 利用jQuery(Ajax),PHP和MySQL开发的AutoCompleter。

    Autocomplete-jQuery ajax jQuery.Suggest 跨浏览器支持,基于jQuery开发的Autocomplete library。 jQuery.Suggest Autocomplete- jQuery plugin 一个jQuery Autocompleter,提供缓存选项来限制对服务器的请求。 Autocomplete- jQuery plugin jquery-aop 为JavaScript增加面向方面编程特性的jQuery插件。它能给任何函数添加Advices(Before、After与Around)。 jquery-aop jQuery Pagination jQuery分页插件 jQuery Pagination Facebox Facebox是一个基于jQuery,Facebook-style的lightbox。能够展示示images,divs或者整个远程页面。 Facebox jwysiwyg WYSIWYG jQuery插件。整个编辑器文件大小只有17Kb。 jwysiwyg Flexigrid Flexigrid是一个类似于Ext Gird,但基于jQuery开发的Grid。它具有的功能包括:可以调整列宽,合并列标题,分页,排序,显示/隐藏表格等。Flexigrid 显示的数据能够通过Ajax获取或者从一个普通的表格转换。

    相关文档
    最新文档