http://www.csdn.net/expert/topic/670/670716.xml?temp=1.148623E-02例子改一下就可以了。

解决方案 »

  1.   

    如果你会asp编写,应该很容易转过来呀
      

  2.   

    主要是sql语句和参数传递的问题!点击的时候,在定向url的时候,传递一个参数(在这里以id为宜)
    然后在第二个jsp页面里面,用sql语句查询id为你刚才得到那个数的记录!
    如:
    select * from table where id=id1(id1就是刚才得到的参数)
      

  3.   

    大家为什么不帮忙啊?我还是把我的两个jsp代码贴上来,大家帮忙看看我为什么不显示单条记录,而是全部记录?<%@ page contentType="text/html;charset=gb2312"%>
    <% 
    //变量声明 
    java.sql.Connection sqlCon; //数据库连接对象 
    java.sql.Statement sqlStmt; //SQL语句对象 
    java.sql.ResultSet sqlRst; //结果集对象 
    java.lang.String strCon; //数据库连接字符串 
    java.lang.String strSQL; //SQL语句 
    int intPageSize; //一页显示的记录数 
    int intRowCount; //记录总数 
    int intPageCount; //总页数 
    int intPage; //待显示页码 
    java.lang.String strPage; 
    int i,j,k; //设置一页显示的记录数 
    intPageSize = 5; //取得待显示页码 
    strPage = request.getParameter("page"); 
    if(strPage==null){
    //表明在QueryString中没有page这一个参数,此时显示第一页数据 
    intPage = 1; 
    } else{
    //将字符串转换成整型 
    intPage = java.lang.Integer.parseInt(strPage); 
    if(intPage<1) intPage = 1; }
    //装载JDBC-ODBC驱动程序 
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); 
    //设置数据库连接字符串 
    strCon = "jdbc:odbc:Test_DB"; 
    //连接数据库 
    sqlCon = java.sql.DriverManager.getConnection(strCon,"sa",""); 
    //创建SQL语句对象 
    sqlStmt = sqlCon.createStatement(); 
    //获取记录总数 
    strSQL = "select count(*) from guestbook"; 
    sqlRst = sqlStmt.executeQuery(strSQL); 
    //执行SQL语句并取得结果集 
    sqlRst.next(); //记录集刚打开的时候,指针位于第一条记录之前 
    intRowCount = sqlRst.getInt(1); 
    sqlRst.close(); //关闭结果集 
    //记算总页数 
    intPageCount = (intRowCount+intPageSize-1) / intPageSize; 
    //调整待显示的页码 if(intPage>intPageCount) intPage = intPageCount; 
    //设置获取数据SQL语句 
    strSQL = "select id,name,email,body from guestbook"; 
    //执行SQL语句并取得结果集 
    sqlRst = sqlStmt.executeQuery(strSQL);
    //将记录指针定位到待显示页的第一条记录上 
    i = (intPage-1) * intPageSize; 
    for(j=0;j<i;j++) sqlRst.next(); %> 
    <html> 
    <head>
    <title>JSP数据库操作例程 - 数据分页显示 - JDBC-ODBC</title>
    </head> 
    <body background="A1_01.jpg">
    <p align=center>jdbc-odbc留言版</p> 
    <table border="1" cellspacing="0" cellpadding="0" width=600 align=center>
      <% 
    //显示数据 
    i = 0; 
    while(i<intPageSize && sqlRst.next()){ %>
      <tr> 
      <%
      String id=sqlRst.getString("id");
      %>
        <td>姓名:<a href="mingxi.jsp?id=<%=id%>"><%=sqlRst.getString(2)%></a></td>
      </tr>
      <% i++; } %>
      <tr> 
        <td align=center> 第<%=intPage%>页 共<%=intPageCount%>页 
          <%if(intPage<intPageCount){%>
          <a href="nongye.jsp?page=<%=intPage+1%>">下一页</a> 
          <%
    }
    %>
          <%if(intPage>1){%>
          <a href="nongye.jsp?page=<%=intPage-1%>">上一页</a> 
          <%
    }
    %>
        </td>
      </tr>
    </table> 
    <p>&nbsp;</p>
    <table width="45%" border="1" align="center">
      <tr>
        <td width="51%"> 
          <div align="center"><a href="tianjia.jsp">添加</a></div>
        </td>
        <td width="49%">退出</td>
      </tr>
    </table>
    <p>&nbsp;</p>
    </body> 
    </html> 
    <% 
    //关闭结果集 
    sqlRst.close(); 
    //关闭SQL语句对象 
    sqlStmt.close(); 
    //关闭数据库
    sqlCon.close();
    %>显示结果的jsp:<%@ page contentType="text/html;charset=gb2312"%>
    <% 
    //变量声明 
    java.sql.Connection sqlCon; //数据库连接对象 
    java.sql.Statement sqlStmt; //SQL语句对象 
    java.sql.ResultSet sqlRst; //结果集对象 
    java.lang.String strCon; //数据库连接字符串 
    java.lang.String strSQL; //SQL语句 
    int intPageSize; //一页显示的记录数 
    int intRowCount; //记录总数 
    int intPageCount; //总页数 
    int intPage; //待显示页码 
    java.lang.String strPage; 
    int i,j,k; //设置一页显示的记录数    String id = (String)request.getParameter("id");intPageSize = 5; //取得待显示页码 
    strPage = request.getParameter("page"); 
    if(strPage==null){
    //表明在QueryString中没有page这一个参数,此时显示第一页数据 
    intPage = 1; 
    } else{
    //将字符串转换成整型 
    intPage = java.lang.Integer.parseInt(strPage); 
    if(intPage<1) intPage = 1; }
    //装载JDBC-ODBC驱动程序 
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); 
    //设置数据库连接字符串 
    strCon = "jdbc:odbc:Test_DB"; 
    //连接数据库 
    sqlCon = java.sql.DriverManager.getConnection(strCon,"sa",""); 
    //创建SQL语句对象 
    sqlStmt = sqlCon.createStatement(); 
    //获取记录总数 
    strSQL = "select count(*) from guestbook"; 
    sqlRst = sqlStmt.executeQuery(strSQL); 
    //执行SQL语句并取得结果集 
    sqlRst.next(); //记录集刚打开的时候,指针位于第一条记录之前 
    intRowCount = sqlRst.getInt(1); 
    sqlRst.close(); //关闭结果集 
    //记算总页数 
    intPageCount = (intRowCount+intPageSize-1) / intPageSize; 
    //调整待显示的页码 if(intPage>intPageCount) intPage = intPageCount; 
    //设置获取数据SQL语句 
    strSQL = "select * from guestbook where guestbook.id=id"; 
    //执行SQL语句并取得结果集 
    sqlRst = sqlStmt.executeQuery(strSQL);
    //将记录指针定位到待显示页的第一条记录上 
    i = (intPage-1) * intPageSize; 
    for(j=0;j<i;j++) sqlRst.next(); %> 
    <html> 
    <head>
    <title>JSP数据库操作例程 - 数据分页显示 - JDBC-ODBC</title>
    </head> 
    <body> 
    <p align=center>jdbc-odbc留言版</p> 
    <table border="1" cellspacing="0" cellpadding="0" width=600 align=center> 
    <% 
    //显示数据 
    i = 0; 
    while(i<intPageSize && sqlRst.next()){ %> 
    <tr> 
    <td>姓名:<%=sqlRst.getString(1)%></td>
    <td>邮件:<%=sqlRst.getString(2)%></td>
    </tr> 
    <tr> 
    <td colspan=2><%=sqlRst.getString(3)%></td>
    </tr>
    <% i++; } %>
    <tr> 
    <td colspan=2 align=center> 
    第<%=intPage%>页  共<%=intPageCount%>页  
    <%if(intPage<intPageCount){%>
    <a href="nongye.jsp?page=<%=intPage+1%>">下一页</a><%
    }
    %>  
    <%if(intPage>1){%>
    <a href="nongye.jsp?page=<%=intPage-1%>">上一页</a><%
    }
    %> 
    </td> 
    </tr>
    </table> </body> 
    </html> 
    <% 
    //关闭结果集 
    sqlRst.close(); 
    //关闭SQL语句对象 
    sqlStmt.close(); 
    //关闭数据库
    sqlCon.close();
    %>
      

  4.   

    zh_baiyu(SkyBay) 大侠:谢谢您的帮忙,我也觉的传递参数有问题,请您帮一下忙吧!
      

  5.   

    第二个jsp写的不对,第二个jsp的功能本来是用来显示个人的详细资料的,根本用不着接什么第几页,跟分页一点关系也没有。只要接上一个页面点击的id就可以了,得到id后,查询数据库
    String strSQL = "select 姓名,内容 from 表 where id = '" 接来的id "'"; 
    执行sql语句得到rs后,直接打印
      

  6.   

    "select * from guestbook where guestbook.id=id"
    这一句有问题
    这和"select * from guestbook"效果一样,所以是全部结果应该是
    "select * from guestbook where guestbook.id="&request("id"); 
      

  7.   

    对不起,写错了,写成asp了。
    应该是
    "select * from guestbook where guestbook.id=" + request.getparmeter("id");