public class SplitPager {
private final int PAGESIZE=4;//页面的大小
private int currentPage=1;//首页
private Object[][]pageList;//要分布的记录
//设置分页的集合
public void setPageList(Object[][] pageList) {
this.pageList = pageList;
}
//根据用户的操作改变当前页的记录
//how 表示 上一页 、下一页…
public void setCurrentPage(int how) {
switch (how) {
case 1://表示首页
this.currentPage=1;
break;
case 2://表示上页
//如果不是第一页,则减少一页
if(this.currentPage>1){
this.currentPage--;
}
break;
case 3://表示下一页
if(this.currentPage<this.getPageCount()){
this.currentPage++;
}
break;
case 4://表首页
this.currentPage=this.getPageCount();
break;
}
}
//得要显示的数据的信息集合
public List<Object[]> getCurrentPageList(){
int start=(this.currentPage-1)*this.PAGESIZE;
int end=start+this.PAGESIZE;
if(end>this.pageList.length){
end=this.pageList.length;
}
//构建一个List的列表
List<Object[]> saveList=new ArrayList<Object[]>();
for (int i = 0; i < end; i++) {
saveList.add(this.pageList[i]);
}
return saveList;
}
private int getPageCount() {
int size=this.pageList.length;
return size%this.PAGESIZE==0?size/this.PAGESIZE:this.PAGESIZE+1;
}
//得到当前页数
public int getCurrentPage() {
return currentPage;
}
public Object[][] getPageList() {
return pageList;
}
}这是写好的一个javaBean,要实现分页功能。我刚刚学jsp,不知道怎么使用jsp结合servlet查询mysql中的数据实现分页,请高人,给完善(指点)下,谢谢!
求教jsp分页
private final int PAGESIZE=4;//页面的大小
private int currentPage=1;//首页
private Object[][]pageList;//要分布的记录
//设置分页的集合
public void setPageList(Object[][] pageList) {
this.pageList = pageList;
}
//根据用户的操作改变当前页的记录
//how 表示 上一页 、下一页…
public void setCurrentPage(int how) {
switch (how) {
case 1://表示首页
this.currentPage=1;
break;
case 2://表示上页
//如果不是第一页,则减少一页
if(this.currentPage>1){
this.currentPage--;
}
break;
case 3://表示下一页
if(this.currentPage<this.getPageCount()){
this.currentPage++;
}
break;
case 4://表首页
this.currentPage=this.getPageCount();
break;
}
}
//得要显示的数据的信息集合
public List<Object[]> getCurrentPageList(){
int start=(this.currentPage-1)*this.PAGESIZE;
int end=start+this.PAGESIZE;
if(end>this.pageList.length){
end=this.pageList.length;
}
//构建一个List的列表
List<Object[]> saveList=new ArrayList<Object[]>();
for (int i = 0; i < end; i++) {
saveList.add(this.pageList[i]);
}
return saveList;
}
private int getPageCount() {
int size=this.pageList.length;
return size%this.PAGESIZE==0?size/this.PAGESIZE:this.PAGESIZE+1;
}
//得到当前页数
public int getCurrentPage() {
return currentPage;
}
public Object[][] getPageList() {
return pageList;
}
}这是写好的一个javaBean,要实现分页功能。我刚刚学jsp,不知道怎么使用jsp结合servlet查询mysql中的数据实现分页,请高人,给完善(指点)下,谢谢!
求教jsp分页
解决方案 »
- eclipse3.2.1用哪个版本的Myeclipse
- struts2从一个action 跳到另一个action 居然没法拿到request 中的值,怎么这么弱智呢。
- 实例化对象
- 关于classes12.jar是如何调用Oracle的sql
- Resin中怎样发布Web Service时出错
- 一头菜猪问高手一个奇怪的问题。上传文件至服务器,结果整个网站都不能访问。
- 有关struts对数据库的操作问题 急~~~!
- 请问高手如何学习Java
- 关于entity bean的ejbCreate方法的参数问题
- js小白 导航变色问题
- spring+strust2+hibernate发送请求没有反映
- 用hibernate3.6.0连接Oracle 11g时出现了buildSessionFactory空指针错误,怎么破?
就是不知道怎么 分页查询出的结果保存到你写的个这javaBean里面 ………………能举例说明么?
然后在页面中List list = (List)request.getAttribute("pagelist");
就可以获取该页的的查询结果,然后遍历list获取内容,
int currentPage, int pageSize) {
// TODO Auto-generated method stub //分页查询前面
StringBuffer buf=new StringBuffer("select * from ("); //传进来的需要查询的
buf.append(sql);
//查的是多少条数据,分页后部分
buf.append(") where rid between ? and ? ");
//根据第几页和每页数据量算出
int start=(currentPage-1)*pageSize+1;
int end=currentPage*pageSize;
List params=new ArrayList();
if(!(obj==null||obj.equals(null))){
for(int i=0;i<obj.length;i++){
params.add(obj[i]);
}
} params.add(start);
params.add(end);
List<T> list=this.select(buf.toString(), params.toArray());
//创建分页对象,将查询的list 和一些要保存参数保存到分页对象
Pagination<T> pagination=new Pagination<T>();
pagination.setList(list);
pagination.setCurrentPage(currentPage);
pagination.setPageSize(pageSize);
int index=sql.indexOf("from");
String tmp=sql.substring(index);
int rowCount=this.getRowCount("select count(*) "+tmp, obj);
pagination.setRowCount(rowCount);
return pagination;
}这是我在原来代码里找到的。
pagination 和你的SplitPager差不多 都是用来保存分页的数据。
这样保存好之后。 在action或者用的是servlet的dopost里用把分页对象保存到request或其他那里。 到页面就用EL表达式用就可以了啊。
EL表达式下一章会学习。希望到时候 能用上,现在刚刚学习到基本javaBean的使用,有可能的话,拿我提供的javaBean写一个例子,帮忙提高下,谢谢!
${保存在request的对象名.对象拥有的属性} EL表达式就是这么简单。。