FoundException e){} try{ con=DriverManager.getConnection("jdbc:odbc:sun","sa",""); sql= con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_R EAD_ONLY); //返回可滚动的结果集: rs=sql.executeQuery("SELECT * FROM students"); //将游标移动到最后一行: rs.last(); //获取最后一行的行号: int lownumber=rs.getRow(); out.print("该表共有"+lownumber+"条记录"); out.print("
现在逆序输出记录:"); out.print("
"); out.print(""); out.print(""+""); out.print(" | "+""); out.print(" | "+"数学成绩"); out.print(" | "+"英语成绩"); out.print(" | "+"物理成绩"); out.print(" |
"); //为了逆序输出记录,需将游标移动到最后一行之后: rs.afterLast(); while(rs.previous()) { out.print(""); number=rs.getString(1); out.print(""+number+" | "); name=rs.getString(2); out.print(""+name+" | "); math=rs.getInt("数学成绩"); out.print(""+math+" | "); english=rs.getInt("英语成绩"); out.print(""+english+" | "); physics=rs.getInt("物理成绩"); out.print(""+physics+" | "); out.print("
") ; }
out.print("
"); out.print("单独输出第 5 条记录
"); rs.absolute(5); number=rs.getString(1); out.print(number+","); name=rs.getString(2); out.print(name+","); math=rs.getInt("数学成绩"); out.print(math+","); english=rs.getInt("英语成绩"); out.print(english+","); physics=rs.getInt("物理成绩"); out.print(physics+"."); con.close(); } catch(SQLException e1) {} %>
实验三 数据的分页
【实验目的】
(1) 掌握 Jdbc 连接数据库的技术 (2) 使用 Jsp 进行数据的分页 (3) 会使用纯
Java 驱动访问数据库
【实验要求】
使用 Jsp 进行数据的分页,要实现超链接方式的数据分页,即首页,末页,上一 页,下一页
功能;
【参考代码: 】 <%@ page contentType="text/html;charset=GB2312" %> <%@ page import="java.sql.*" %> <%! int pageSize = 3; //每页显示的记录数. int pageCount = 0; //分页后的总页数. %> <%-- 客户通过表单提交欲要显示的页码数--%>
<% Connection con; Statement sql; ResultSet rs; try { //Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");//SQL Server 本地协议纯 java 驱动 } catch (ClassNotFoundException e) { e.printStackTrace(); } try { long start = System.currentTimeMillis(); // con = DriverManager.getConnection("jdbc:odbc:aaa", "", ""); //jdbc:sqlserver://localhost:1433; DatabaseName=shoppingDB con = DriverManager.getConnection("jdbc:sqlserver://localhost:1433;DatabaseName=pubs", "aa", "aa"); sql =
con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY); //返回可滚动的结果集: rs = sql.executeQuery("SELECT * FROM jobs"); //将游标移动到最后一行: rs.last(); //获取最后一行的行号: int lastRow = rs.getRow(); //计算分页后的总页数: pageCount = (lastRow % pageSize == 0) ? (lastRow / pageSize) : (lastRow / pageSize + 1); //当前显示的初始页数: int showPage = 1; //告知客户总页数: %>
共有<%=pageCount%>页
每页显示<%=pageSize%>条记录. <% //获取客户想要显示的页数: String integer = request.getParameter("showPage"); if (integer == null) { integer = "1"; } try { showPage = Integer.parseInt(integer); } catch (NumberFormatException e) { showPage = 1; } i