日期:2014-05-17  浏览次数:20714 次

大神们 ,jsp分页问题,弄不出来,大家看看
我的JSp 分页 只能显示第一页数据 数据库里面一共30条记录 分6页显示
<%@ page language="java" contentType="text/html; charset=gb2312"
  pageEncoding="gb2312"%>
 <%
  request.setCharacterEncoding("gb2312");
 %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<jsp:useBean id="queryBook" class="example.QueryBook" scope="session" />
<%@ page import="java.sql.*" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>图书馆书库信息</title>
</head>
<body>
<script type="text/javascript">
 
</script>
<h2>图库中书</h2>

<table width="500" border="1" align="center" id="tab">
  <tr>
  <td>ISBN</td>
  <td>书名</td>
  <td>作者</td>
  <td>出版社</td>
  <td>余量</td>
  <td>库存</td>
  <td>分类</td>
  </tr>

<%
String s="wjj";
  s=request.getParameter("pa");
  out.println("s = "+s);
  int start =0; //从第几条开始显示
  if(s != null){
start=Integer.parseInt(s) ;
 
  }else{
start =1;
  }
  int al= 1; //第几页
int pageSize = 5;//每页显示 数目queryBook.count() / pageSize
int num =6 ;//总页数
%>
  一共 <%=num%> 页 ;
  当前第<%=al++ %>页 &nbsp &nbsp
  
  <%
  ResultSet rs = queryBook.query(start, pageSize);
 
  while (rs.next()) {
  %>
 <tr>
  <td><%=rs.getString("ISBN")%></td>
  <td><%=rs.getString("Bname")%></td>
  <td><%=rs.getString("Bwriter")%></td>
  <td><%=rs.getString("Bpress")%></td>
  <td><%=rs.getString("Bsurplus")%></td>
  <td><%=rs.getString("Bstock")%></td>
  <td><%=rs.getString("Bclass")%></td>
  </tr>
<%
//
}
  // out.println("<a href='queryBook.jsp? page=7'>下一页告诉你</a>");
%>

<a href="queryBook.jsp? pa=5" > 下一页告诉你</a>

</table>

</body>
</html>
求 哪里错l

------解决方案--------------------
s=request.getParameter("pa");
<a href='queryBook.jsp? page=7

你取得pa 不对吧 
应该是request.getParameter("page"); !
------解决方案--------------------
他传过去的就是pa!关键要看你的数据库方法,那个query(start, pageSize),问题在那里。
------解决方案--------------------
Java code


我用分页不是把页号作为数据记录的一项,是把数据取出来然后根据每页显示的条数计算出来有多少页,我的方法参考下吧,不知道是不是你想要的结果:
Java code

ListAction.java



package com.sy.action;

import java.util.List;

import com.opensymphony.xwork2.ActionSupport;
import com.sy.dao.AdminDao;
import com.sy.dao.NewsDao;
import com.sy.dao.impl.AdminDaoImpl;
import com.sy.dao.impl.NewsDaoImpl;
import com.sy.vo.Admin;
import com.sy.vo.News;

public class ListAction extends ActionSupport {

    private static final long serialVersionUID = 1L;
        int i=1;