分页功能的java实现
最近做一个项目,要用到分页功能,参考了很多方法,有的不合适,有的不喜欢,于是自己在他们的基础上整了一个;思路是这样的:先把需要分页的数据或是记录都查询出来 存入一个集合类里如List或是Vector,然后利用其sublist(int findex,int eindex)方法,获取需要分页的数据或记录,关于sublist()函数就自己去查API了。下面贴下代码吧,首先是将分页所需的一些个东东抽象出一个javabean对象—PageBean:
public class PageBean {
private int curPage; //当前页
private int pageCount; //总页数
private int rowsCount; //总行数
private int pageSize=10; //每页多少行
public PageBean(int rows){
this.setRowsCount(rows);
if(this.rowsCount % this.pageSize == 0){
this.pageCount=this.rowsCount / this.pageSize;
}
else if(rows<this.pageSize){
this.pageCount=1;
}
else{
this.pageCount=this.rowsCount / this.pageSize +1;
}
}
public int getCurPage() {
return curPage;
}
public void setCurPage(int curPage) {
this.curPage = curPage;
}
public int getPageCount() {
return pageCount;
}
public void setPageCount(int pageCount) {
this.pageCount = pageCount;
}
public int getPageSize() {
return pageSize;
}
public void setPageSize(int pageSize) {
this.pageSize = pageSize;
}
public int getRowsCount() {
return rowsCount;
}
public void setRowsCount(int rowsCount) {
this.rowsCount = rowsCount;
}
}
分页显示:
List clist=adminbiz.queryNotFullCourse();//将查询结果存放在List集合里
PageBean pagebean=new PageBean(clist.size());//初始化PageBean对象
//设置当前页
pagebean.setCurPage(page); //这里page是从页面上获取的一个参数,代表页数
//获得分页大小
int pagesize=pagebean.getPageSize();
//获得分页数据在list集合中的索引
int firstIndex=(page-1)*pagesize;
int toIndex=page*pagesize;
if(toIndex>clist.size()){
toIndex=clist.size();
}
if(firstIndex>toIndex){
firstIndex=0;
pagebean.setCurPage(1);
}
//截取数据集合,获得分页数据
Li
相关文档:
// 合并 List 中的相同数据行
// Source : tmpOrderEntryListBeanList
// Target : resultOrderEntryListBeanList
// ------------------------------------------------------------------
// (1)将结果赋给 Result Livon 2010-5-18 三
// 整理列表,以便查询库存。
private List<OrderEntryListBe ......
现在我就给大家介绍一下final关键字相关的一些东西~~~
1,final数据
在Java中,向编译器告知一块数据是恒定不变的,这类常量必须是基本数据类型,并且以关键字final表示,在对这个常量进行定义的时候, ......
首先我们要先写一个备份类
BackupDb.java
代码如下:
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
import java.sql.SQLException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class BackupDb {
public BackupDb() {
}
public String back ......
我们知道,在Java中设置变量值的操作,除了long和double类型的变量外都是原子操作,也就是说,对于变量值的简单读写操作没有必要进行同步。
这在JVM 1.2之前,Java的内存模型实现总是从主存读取变量,是不需要进行特别的注意的。而随着JVM的成熟和优化,现在在多线程环境下volatile关键字的使用变得非常重要。
在当前 ......
众所周知,在Java多线程编程中,一个非常重要的方面就是线程的同步问题。
关于线程的同步,一般有以下解决方法:
1. 在需要同步的方法的方法签名中加入synchronized关键字。
转载注明出处:http://x- spirit.javaeye.com/、http: //www.blogjava.net/zhangwei217245/
2. 使用synchronized块对需要进行同步的代码段进行 ......