try{ ResultSet RS = dbbean.executeQuery("select * from l_zhangjia");
     while (RS.next())
%>
    <tr> 
      <td align=middle bgcolor=#f4faed width="3%" height="37"> 
        <div align="center"><%=RS.getInt("id")%></div>
      </td>
      <td align=middle bgcolor=#f4faed width="19%" height="37"> 
        <div align="center"><%=RS.getInt("datetime")%></div>
      </td>
<%

}
               ~~~请问,它对应的括号在哪里?
/////////////////////////////////////////////////////////////////////////////////////////////// RS.close();
        dbbean.close();
   }catch(Exception e){
   out.println("无法打开");
}

解决方案 »

  1.   

    <%

    }<-----------------你的括号是不配对的,能编译就已经错了,怎么还能运行,
                      哈哈...,你倒还能运行,真强! RS.close();
            dbbean.close();
      

  2.   

    while (RS.next())
    后面掉了{还有你的字段类型是不是都是int?如果不是,可以用getString来取
      

  3.   

    兄弟:应该这样写:
    try{
    ResultSet RS = dbbean.executeQuery("select * from l_zhangjia");
         while (RS.next()){
    %>
        <tr> 
          <td align=middle bgcolor=#f4faed width="3%" height="37"> 
            <div align="center"><%=RS.getInt("id")%></div>
          </td>
          <td align=middle bgcolor=#f4faed width="19%" height="37"> 
            <div align="center"><%=RS.getInt("datetime")%></div>
          </td>
    <%
    }
    RS.close();
            dbbean.close();
       }catch(Exception e){out.println("无法打开");}
      

  4.   

    while(RS.next()){
    -----------------------
    -----------------------
    }你的括号是不配对
    RS.close();
            dbbean.close();<%=RS.getInt("datetime")%>也不行吧?<%=RS.getDate("datetime")%>
      

  5.   

    while (RS.next())
    后面少一个"{"
    这样你的结果不可预知,
    很可能就是相当于执行:
    while (RS.next())
         out.println("<tr>");看JSP处理的内部机制了。
    给你一段一个JSP反编译的结果:
                jspfactory = JspFactory.getDefaultFactory();
                httpservletresponse.setContentType("text/html;charset=gb2312");
                pagecontext = jspfactory.getPageContext(this, httpservletrequest, httpservletresponse, "", true, 8192, true);
                javax.servlet.ServletContext servletcontext = pagecontext.getServletContext();
                ServletConfig servletconfig = pagecontext.getServletConfig();
                javax.servlet.http.HttpSession httpsession = pagecontext.getSession();
                jspwriter = pagecontext.getOut();
                jspwriter.print(_jspx_html_data[0]);
                String s = (String)httpservletrequest.getAttribute("time");
                jspwriter.print(_jspx_html_data[1]);
                jspwriter.print(httpservletrequest.getContextPath());
                jspwriter.print(_jspx_html_data[2]);
                jspwriter.print(s);
    注意看里面的变量s,JSPWRITER一段一段得输出HTML信息,在必要得地方输出s,
    s是一个servlet在request里设置的属性。
    页面中在那个地方输出,
    所以你的这段代码的可能结果是:
    while (RS.next())
         out.println(html_data);其中html_data可能是:
        <tr> 
          <td align=middle bgcolor=#f4faed width="3%" height="37"> 
            <div align="center">另外,正如 caina3(阿郎) ( 所指,
    不明白你代码少括号居然还能运行。