对数据进行分页显示到table中的实现方法

我最先用jframe编程的时候写的比较简单,只是先查询到所有记录,再根据当前页码筛选出当前页的记录,返回的小集合可以直接显示到table上。

import java.util.ArrayList;
import java.util.List;
import com.yu.entity.User;
public class PageController {
private List<User> bigList=new ArrayList<User>(); //大集合,从外界获取
private List<User> smallList=new ArrayList<User>(); //小集合,返回给调用它的类
private static int curentPageIndex=1; //当前页码
private int countPerpage=10; //每页显示条数
private int pageCount; //总页数
private int recordCount; //总记录条数
//初始化块,调用类的时候首先自动加载
{
//调用查询数据库的方法,返回一个List
this.bigList = new Utils().query();
//计算总页数
if (bigList.size()%countPerpage==0) {
this.pageCount=bigList.size()/countPerpage;
} else {
this.pageCount=(bigList.size()/countPerpage)+1;
}
}
public PageController() {
}
//传入指定页码的构造函数,参看第几页。
public PageController(int curentPageIndex){
this.curentPageIndex=curentPageIndex;
}
//确切的获取当前页的记录,返回一个list列表
public List<User> setCurentPageIndex() {
return select();
}
//下一页
public List<User> nextPage() {
if (curentPageIndex < pageCount ) {
curentPageIndex++;
System.out.println("当前页:"+curentPageIndex);
}
return select();
}
//上一页
public List<User> previousPage() {
if (curentPageIndex > 1) {
curentPageIndex--;
System.out.println("当前页:"+curentPageIndex);
}
return select();
}
//此方法供以上方法调用,根据当前页,筛选记录
public List<User> select(){
recordCount=bigList.size();
for(int i=(curentPageIndex-1)*countPerpage; i<curentPageIndex*countPerpage&&i<recordCount; i++){
smallList.add(bigList.get(i));
}
return smallList;
}
} 

下面是写在jframe中的内容,调用分页方法。

//查询上一页
private void jButton8ActionPerformed(java.awt.event.ActionEvent evt) {
List<User> newlist = new PageController().previousPage();
viewAll(newlist);
}
//返回第一页的记录
private void jButton10ActionPerformed(java.awt.event.ActionEvent evt) {
List<User> newlist = new PageController(1).setCurentPageIndex();
viewAll(newlist);
}
//查询下一页
private void jButton9ActionPerformed(java.awt.event.ActionEvent evt) {
List<User> newlist = new PageController().nextPage();
viewAll(newlist);
}
//显示List中的用户
public void viewAll(List<User> list) {
Object[][] objects = new Object[(list.size())][];
for (int i = 0; i < objects.length; i++) {
objects[i] = new Object[3];
objects[i][0] = i + 1;
objects[i][1] = list.get(i).getUserid();
objects[i][2] = list.get(i).getTruename();
}
jTable1.setModel(new javax.swing.table.DefaultTableModel(objects,
new String[] { "行号", "工号", "姓名" }));
} 

以上所述是小编给大家介绍的对数据进行分页显示到table中的实现方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

(0)

相关推荐

  • 动态生成table并实现分页效果心得分享

    前台代码: 复制代码 代码如下: <table style="width: 100%;"> <tr> <td> 搜索字: <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox> <asp:Button ID="Button1" runat="server" Text="搜索&

  • DWZ table的原生分页浅谈

    最近在项目开发当中很少会用到DWZ原生的table分页,往往是使用jqgrid or grid这种第三方数据绑定的表格插件,如今在项目中要求了,就必须要使用DWZ自带的table了 接下来看一段代码,我会给大家详细介绍DWZ中table分页的使用方式,以下是在MVC中实现的方式. ?<div class="pagination" targetType="navTab" totalCount="@ViewBag.totalCount" num

  • bootstrap table 服务器端分页例子分享

    1,前台引入所需的js 可以从官网上下载 复制代码 代码如下: function getTab(){ var url = contextPath+'/fundRetreatVoucher/fundBatchRetreatVoucherQuery.htm'; $('#tab').bootstrapTable({ method: 'get', //这里要设置为get,不知道为什么 设置post获取不了 url: url, cache: false, height: 400, striped: tru

  • 利用js制作html table分页示例(js实现分页)

    有时候table的列数太长,不利于使用者查询,所以利用JS做了一个table的分页,以下为相关代码 一.JS代码 复制代码 代码如下: <script type="text/javascript">            var pageSize = 15;    //每页显示的记录条数             var curPage=0;        //当前页             var lastPage;        //最后页             var

  • JS代码实现table数据分页效果

    第一个:实现的很常见很简单的显示页数翻页 效果图: •这是HTML代码,很简单滴(我好像看到了被嫌弃的小眼神) <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-"> <script src="js/jquery-...js"></script> <script src="js/demo.js

  • 对数据进行分页显示到table中的实现方法

    我最先用jframe编程的时候写的比较简单,只是先查询到所有记录,再根据当前页码筛选出当前页的记录,返回的小集合可以直接显示到table上. import java.util.ArrayList; import java.util.List; import com.yu.entity.User; public class PageController { private List<User> bigList=new ArrayList<User>(); //大集合,从外界获取 pr

  • python 实现分页显示从es中获取的数据方法

    注意:使用该方法,获取的数据总数目不能超过1万,否则出错 #在python3上运行 from elasticsearch import Elasticsearch from urllib3.connectionpool import xrange def get_page_data(result): for hit in result['hits']['hits']: print(hit) if __name__=='__main__': es_host = "0.0.0.0" por

  • 复杂检索数据并分页显示的处理方法

    系统标题:复杂检索数据并分页显示的处理方法 系统功能:利用临时表检索数据库数据,然后分页显示的方法: 处理方法:采用临时表存放数据中间结果,根据中间结果显示数据           数据的显示采用隔行的方式处理 处理优点:对于复杂的查询,特别是涉及到多表的数据查询,如果直接使用查询条件,系统的           开销将很大,利用临时表把数据先保存,然后处理.这样对数据库的查询只要开销一次. 使用方法:只要把连接数据库的用户信息和数据表改变即可使用 <?   //连接数据库   $dbh =  

  • Android数据持久化之读写SD卡中内容的方法详解

    本文实例讲述了Android数据持久化之读写SD卡中内容的方法.分享给大家供大家参考,具体如下: 前面文章里讲的那三个方法:openFileOutput .openFileInput 虽然都能通过流对象OutputStream和InputStream可以处理任意文件中的数据,但与 SharedPreferences 一样,只能在手机内存的指定目录下建立文件,因此,在实际的开发使用中有很大的局限性,那么在这一节中,我们来看一个比较高级的方法来实现数据的持久化--读写SD卡上的内容. --读取ass

  • js实现将json数组显示前台table中

    在最近的学习中遇到一个小问题,如何把JSON数组显示在前台的table中,经过一番借鉴和学习之后终于解决了这个问题.具体的代码如下: (前提:利用ajax获取过来的JSON字符串必须是规范的,这样才能解析正确.后台获取数据库中数据的代码省略了) 1.前台JS代码(使用之前引入JQuery的js库文件) $.ajax({ type: "GET", url: "UserList.ashx?Action=List",//利用ajax请求后台的并返回值 // data: &

  • Ajax读取数据之分页显示篇实现代码

    我觉得还是有必要把我的ajax分页呈现给大家.我先讲一下这个ajax分页的实现核心,然后我们再看实例效果.所谓的ajax分页与传统的数据分页,在服务端的代码基本上是一样的.我们主要做的是使用ajax在不刷新的情况下,将请求的页码,和每页要显示的条数发送给服务端的处理网页.大家点击这个网址就可以看到要请求的数据:"ajax_page.asp?action=read&pagecount=3 & current_page=1" 在这段URL里,pagecount代表每页要显示

  • 判断一个表的数据不在另一个表中最优秀方法

    复制代码 代码如下: table a columns(key,value); table b columns(key,value); SELECT a.* FROM a LEFT JOIN b ON a.key = b.key WHERE b.key IS NULL

  • 分页显示之超级提速版

    大家知道,asp本身提供分页功能,但是,如果数据量很大的时候,分页显示起来,每换一页都要等N长时间,那是人们最讨厌的事情.那为什么每换一页都要这么长时间呢?其实,事实上每换一个页面,后台就从数据库中检索一次数据,这样一来数据量大了,自然速度缓慢.这当中我们可以看出它做了很多次重复的工作.数据的检索只要一次就够了,因为数据没被操作过,无论检索几次结果都是一样的.我们的目标就是要把这当中的重复检索次数减少到最少,1次或者2次.方法就是:把检索好的数据保存起来(比如你可以在登录成功后就在后台检索你要的

  • intellij idea快速查看当前类中的所有方法(推荐)

    问题:当一个类中的方法非常多,一个个查看不直观也比较麻烦,如何快速的查看这个类中的所有方法? 按快捷键 Alt+7就能显示当前类中的所有方法.全局常量,方法还包括形参和返回值,一目了然--打开界面如下: 默认的快捷键就是Alt+7,如果你的修改过,就去keymap中设置查看: 总结 到此这篇关于intellij idea快速查看当前类中的所有方法的文章就介绍到这了,更多相关idea查看当前类中的所有方法内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

  • JSP数据库操数据分页显示

    <%@ page contentType="text/html;charset=8859_1" %><%//变量声明java.sql.Connection sqlCon; //数据库连接对象java.sql.Statement sqlStmt; //SQL语句对象java.sql.ResultSet sqlRst; //结果集对象java.lang.String strCon; //数据库连接字符串java.lang.String strSQL; //SQL语句int

随机推荐