jsp+my sql怎么实现分页..麻烦告知代码(要亲自试验过可以的)

各个页面都最好给出..包括后台前台.
2025-01-04 04:09:05
推荐回答(3个)
回答1:

我给你贴个先是DAOpublic List list(PageRoll pageRoll) throws SQLException {
String sql = "select * from person limit ?,?";
Connection conn = null;
PreparedStatement ps = null;
ResultSet rs = null;
List list = new ArrayList();
try{
conn = DBUtil.getConnection();
ps = conn.prepareStatement(sql);
ps.setInt(1, (pageRoll.getCurrPage()-1)*pageRoll.getPageSize());
ps.setInt(2, pageRoll.getPageSize());
rs = ps.executeQuery();
while(rs.next()){
Person p = new Person();
p.setId(rs.getInt("id"));
p.setName(rs.getString("name"));
p.setAge(rs.getInt("age"));
p.setTel(rs.getString("tel"));
p.setDesctext(rs.getString("desctext"));
list.add(p);
}
sql = "select count(*) from person";
ps = conn.prepareStatement(sql);
rs = ps.executeQuery();
rs.next();
pageRoll.setCountSize(rs.getInt(1));
}catch(SQLException e){
throw e;
}finally{
DBUtil.close(rs, ps, conn);
}
return list;
}这是JSP中的代码


My JSP 'pageRoll.jsp' starting page
























当前第${requestScope.PageRoll.currPage}页 |
共${requestScope.PageRoll.countPage}页 |
共${requestScope.PageRoll.countSize}条记录






回答2:

select * from 表 where 条件 limit A,B
意思是从第A条记录开始取,取到B条记录结束。

你先“select count(0) from 表”取记录总数,total。
然后你如果每页显示X条记录,可以算出总共有多少页,然后设当前页为P,
根据这个求出A和B带到最上面的sql语句中查出结果即可。
A=(P-1)*X+1
B=A+X

回答3:

告诉我您的邮箱 我这里有完整的分页代码 可以发给你