分页功能的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
相关文档:
一。谁在做Garbage Collection?
一种流行的说法:在C++
里,是系统在做垃圾回收;而在Java
里,是Java
自身在做。
在C++
里,
释放内存是手动处理的,要用delete运算符来释放分配的内存。这是流行的说法。确切地说,是应用认为不需要某实体时,就需用delete告诉系统,可
以 ......
我们知道,在Java中设置变量值的操作,除了long和double类型的变量外都是原子操作,也就是说,对于变量值的简单读写操作没有必要进行同步。
这在JVM 1.2之前,Java的内存模型实现总是从主存读取变量,是不需要进行特别的注意的。而随着JVM的成熟和优化,现在在多线程环境下volatile关键字的使用变得非常重要。
在当前 ......
1. 概念: 序列化就是把对象变成对象流(确切说是把对象的属性写入流),如果需要进而可以把对象流存成二进制文件;
2. 目的: 序列化的目的是为了方便永久存储或者网络传输;
3. 如何实现: 将类实现Serializable接口即可,无必须实现的方法,实现该接口只是为了标识该类可被序列化;
4. (转)其他需要知道的:
  ......
众所周知,在Java多线程编程中,一个非常重要的方面就是线程的同步问题。
关于线程的同步,一般有以下解决方法:
1. 在需要同步的方法的方法签名中加入synchronized关键字。
转载注明出处:http://x- spirit.javaeye.com/、http: //www.blogjava.net/zhangwei217245/
2. 使用synchronized块对需要进行同步的代码段进行 ......
【IT168 文档
】内存
泄露问题对于程序来说,是一个很难发现,并且容易引起严重灾害的事情。
Java一直以其垃圾回收机制为自豪,那是否这种机制就是完美的呢。
常规理解上,Java的内存
管理机制是将局部变量保存在堆中,当变量的作用域结束之后,该变量所占用的
内容会被自动回收。不需要做任何特殊的处理。比如下 ......