想实现分页效果,不是很懂,求指导,可以说个大概方向,能提供代码更好。。。。
这是后台代码
- Java code
public ArrayList<User> select(String sql){ ArrayList<User> list = new ArrayList<User>(); Connection conn = null; Statement stmt = null; ResultSet rs = null; try { conn = getConnection(); stmt = conn.createStatement(); rs = stmt.executeQuery(sql); while(rs.next()){ //将rs结果集中的每一条记录都转化成User对象,再放进list中 User user = new User(); user.setTel(rs.getString("tel")); user.setUsername(rs.getString("username")); user.setAddr(rs.getString("addr")); user.setMail(rs.getString("mail")); user.setType(rs.getInt("type")); user.setYf(rs.getDouble("yf")); user.setNum(rs.getInt("num")); user.setYb(rs.getInt("yb")); user.setFp(rs.getInt("fp")); user.setPrice(rs.getDouble("price")); user.setNum(rs.getInt("num")); user.setId(rs.getString("id")); user.setFk(rs.getInt("fk")); list.add(user); } } catch (SQLException e) { System.out.println("Sql异常1"); } finally{ if(rs!=null){ try { rs.close(); } catch (SQLException e) { System.out.println("关闭rs时异常"); } } if(stmt!=null){ try { stmt.close(); } catch (SQLException e) { System.out.println("关闭stmt时异常"); } } if(conn!=null){ try { conn.close(); } catch (SQLException e) { System.out.println("关闭conn时异常"); } } } return list; }
主页面调用代码
- Java code
<% UsersDAO db = new UsersDAO(); String sql="select *from ZTC"; ArrayList<User> list = db.select(sql); if(list.isEmpty()==false) { for(int i=0;i<list.size();i++) { User user = list.get(i); %> <tr> <td><%=user.getId()%></td> <td><%=user.getUsername()%></td> <td><%=user.getTel()%></td> <td><%=user.getAddr()%></td> <td><%=user.getMail()%></td> <td><%=user.getType()%></td> <td><%=user.getNum()%></td> <td><%=user.getYb()%></td> <td><%=user.getYf()%></td> <td><%=user.getFp()%></td> <td><%=user.getPrice()%></td> <td><%=user.getFk()%></td> <td>
------解决方案--------------------------------------------------------
sql分页懂吧?就是从第N条开始取到M条结束的语句。
在页面你需要定义三个变量,当前页,总页数,和每页多少条。然后有上一页,下一页(可以有首页,末尾)按钮,点击后把当前页和每页多少条传递到后台。后台接收参数后处理sql语句分页,查询(点击下一页的情况下)当前页+1然后*每页显示条数计算值为开始记录数;当前条数+每页显示条数为结束记录数。这样把查询结果传递到页面就是下一页的数据了。记住要统计总条数哦。
------解决方案--------------------------------------------------------