在jvabean里如何实现,上一页、下一页,可以选择到某一页。(急)

快跑蜗牛哥 2007-11-21 11:32:31
在jsp中可以实现分页,现在要求要把分页功能放javabean里

请问如何实现,说白了就是怎么可以得到当前页面的参数(在javabean里)

在jsp里可以用to_Page = request.getParameter("toPage")
请问在javabean里怎样能实现和这条语句一样的意思
...全文
154 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhb_821012 2007-11-21
  • 打赏
  • 举报
回复
楼上的说的很清楚了
友情up
cookslowly 2007-11-21
  • 打赏
  • 举报
回复
简单说一句话,让参数PAGE在JSP和BEAN之间来回传递就行了
SINCE1978 2007-11-21
  • 打赏
  • 举报
回复
页面上:ActionForm为具有 getFooters() 方法的javabean


<bean:write name="ActionForm" property="footers" filter='false'/>
SINCE1978 2007-11-21
  • 打赏
  • 举报
回复

public class Page {
/**
* 查询返回的页结果集
*/
private Iterator data;
/**
* 待展示的页码
*/
private int index = 1;//页面隐藏域 - 当前是第几页
/**
* 每页显示的记录数
*/
private int rows = 10;//页面隐藏域 - 每页条数
/**
* 符合检索条件的纪录总数
*/
private int totalRows = 0;//总条数

private int pageRows = 0;

public Page() {
}

public Iterator getData() {
if(data==null)
return new ArrayList().iterator();
return data;
}
public int getIndex() {
return index;
}
public int getPageCount() {
return (totalRows-totalRows%rows)/rows + (totalRows%rows>0?1:0);
}

public int getPageRows(){
return this.pageRows;
}
public int getRows() {
return rows;
}
public int getTotalRows() {
return totalRows;
}

public void setData(Iterator data,int pageRows){
this.data = data;
this.pageRows = pageRows;
}

public void setData(List data) {
if(this.data == null)
this.pageRows = 0;

this.data = data.iterator();
this.pageRows = data.size();
}

public void setIndex(int index) {
this.index = index;
}
public void setTotalRows(int totalRows) {
this.totalRows = totalRows;
}
public void setRows(int rows) {
this.rows = rows;
}

public int getStartRows(){
return (this.index-1)*this.rows;
}

public int getEndRows(){
return this.index*this.rows;
}
}
SINCE1978 2007-11-21
  • 打赏
  • 举报
回复

public String getFooters() {

StringBuffer str = new StringBuffer("");
try {
int next, prev;
int index = page.getIndex();
int pageCount = page.getPageCount();
prev = index - 1;
next = index + 1;

if (index > 1) {
str
.append("<INPUT type=submit value=首页 name=firs onclick='this.form.pages.value=1'>");
} else {
str.append("<INPUT type=submit value=首页 name=firs disabled>");
}
if (index > 1) {
str
.append("<INPUT type=submit value=上页 name=prev onclick='this.form.pages.value="
+ prev + "'>");
} else {
str.append("<INPUT type=submit value=上页 name=prev disabled>");
}
if (index < pageCount) {
str
.append("<INPUT type=submit value=下页 name=next onclick='this.form.pages.value="
+ next + "'>");
} else {
str.append("<INPUT type=submit value=下页 name=next disabled>");
}
if (pageCount > 1 && index != pageCount) {
str
.append("<INPUT type=submit value=末页 name=last onclick='this.form.pages.value="
+ pageCount + "'>");
} else {
str.append("<INPUT type=submit value=末页 name=last disabled>");
}
str.append(" 共" + page.getTotalRows() + "条记录");
str
.append(" 每页<SELECT size=1 name=pagesize onchange='this.form.pages.value=1;this.form.pageSize.value=this.value;this.form.submit();'>");

if (page.getRows() == 2) {
str.append("<OPTION value=2 selected>2</OPTION>");
} else {
str.append("<OPTION value=2>2</OPTION>");
}

if (page.getRows() == 10) {
str.append("<OPTION value=10 selected>10</OPTION>");
} else {
str.append("<OPTION value=10>10</OPTION>");
}
if (page.getRows() == 20) {
str.append("<OPTION value=20 selected>20</OPTION>");
} else {
str.append("<OPTION value=20>20</OPTION>");
}
if (page.getRows() == 50) {
str.append("<OPTION value=50 selected>50</OPTION>");
} else {
str.append("<OPTION value=50>50</OPTION>");
}
if (page.getRows() == 100) {
str.append("<OPTION value=100 selected>100</OPTION>");
} else {
str.append("<OPTION value=100>100</OPTION>");
}
str.append("</SELECT>");
str.append("条 分" + pageCount + "页显示 转到");
str
.append("<SELECT size=1 name=Pagelist onchange='this.form.pages.value=this.value;this.form.submit();'>");
for (int i = 1; i < pageCount + 1; i++) {
if (i == index) {
str.append("<OPTION value=" + i + " selected>" + i
+ "</OPTION>");
} else {
str.append("<OPTION value=" + i + ">" + i + "</OPTION>");
}
}
str.append("</SELECT>页");
str.append("<INPUT type=hidden value=" + index
+ " name=\"page.index\" id=\"pages\" >");
str.append("<INPUT type=hidden value=" + page.getRows()
+ " name=\"page.rows\" id=\"pageSize\" >");
} catch (Exception e) {
return "";
}
return str.toString();
}
  • 打赏
  • 举报
回复
把 request 传给 javabean。
快跑蜗牛哥 2007-11-21
  • 打赏
  • 举报
回复
参数问题~~
几天没写代码,都不会用了~
谢谢各位兄弟的帮忙
随风醉舞 2007-11-21
  • 打赏
  • 举报
回复
参数往返传递~~~可以实现
快跑蜗牛哥 2007-11-21
  • 打赏
  • 举报
回复
SINCE1978 :Iterator是什么类型啊~怎么报错啊~

让参数PAGE在JSP和BEAN之间来回传递就行了

问题是SQL语句,上下页都在javabean里,参数怎么传递啊~

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧