一个奇怪的jsp问题(可能很简单),请高手帮忙!谢谢了!分不够再加.

时间:2021-05-03 04:33:34
一个jsp,报错说是数组越界!
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*,java.util.*"%>
<jsp:useBean id="sql" scope="session" class="my.DBConnect">
</jsp:useBean>
<html>
  <head>
    <title>查看申请结果</title>
  </head>
  <body>
    <div align="center">
    <font size="6" color="#ff6600">申请结果查看</font>
    </div>
    <p>&nbsp;</p>
<table cellspacing="0" cellpadding="0" border="0" width="99%" align="center">
   <tr>
     <td bgcolor="0099CC">
<table border="0" cellspacing="1" cellpadding="4" width="100%" >
<tr>
<th><font color="#ff6600">申请人姓名</font></th>
<th><font color="#ff6600">物品名称</font></th>
<th><font color="#ff6600">申请数量</font></th>
<th><font color="#ff6600">物品型号</font></th>
<th><font color="#ff6600">申请日期</font></th>
<th><font color="#ff6600">处理</font></th>
</tr>
<%
   String username=(String)session.getAttribute("name");
   //String sqlck="select *from request where username='"+username+"'";
   String sqlck="select *from request where username="+username;
   ResultSet rst=sql.executeQuery(sqlck);
   int intpage=1;
   int intpagecount;
   int introwcount=0;
   int intpagesize=4;
   String strpage=null;
   int i=0;
   String id=null;
   String name=null;
   String proname=null;
   String num=null;
   int pronum;
   String proxh=null;
   String reqdate=null;
   String isagree=null;
   String agreenum=null;
   String disrea=null;
   try{rst.last();
   introwcount=rst.getRow();}catch(SQLException e){e.printStackTrace();}
   intpagecount=(introwcount-1+intpagesize)/intpagesize;
   strpage=request.getParameter("page").trim();

   if(strpage==null)
   {intpage=1;}
   else
   {intpage=Integer.parseInt(strpage);
   if(intpage<1)intpage=1;}
   if(intpage>intpagecount)
   {intpage=intpagecount;}
   if(intpagecount>0)
   {try{rst.absolute((intpage-1)*intpagesize+1);}
   catch (SQLException e){}
   while(i<intpagesize && !rst.isAfterLast())
   {
     id=rst.getString("id");
     name=rst.getString("name");
     proname=rst.getString("proname");
     num=rst.getString("pronum");
     Integer.parseInt()
     pronum=Integer.parseInt(num);
     proxh=rst.getString("proxh");
     reqdate=rst.getString("reqdate");
     isagree=rst.getString("isagree");
     agreenum=rst.getString("agreenum");
     int a=Integer.parseInt(agreenum);
     disrea=rst.getString("disrea");
     %>
<tr>
    <td bgcolor="E6F3FF" width="21%" class="tablerow"><font color="#ff6600"><%=name%></font></td>
    <td bgcolor="E6F3FF" width="21%" class="tablerow"><font color="#ff6600"><%=proname%></font></td>
    <td bgcolor="E6F3FF" width="21%" class="tablerow"><font color="#ff6600"><%//=pronum%></font></td>
    <td bgcolor="E6F3FF" width="21%" class="tablerow"><font color="#ff6600"><%=proxh%></font></td>
    <td bgcolor="E6F3FF" width="21%" class="tablerow"><font color="#ff6600"><%=reqdate%></font></td>
    <td bgcolor="E6F3FF" width="21%" class="tablerow"><font color="#ff6600">name</font></td>
</tr>
  <%
  rst.next();
   i++;
   }
   }
   %>
   </table>
   </td>
   </tr>
   </table>
  </body>
  </html>

谢谢!

6 个解决方案

#1


晕,一下注释都没有!
帮你顶好了!

#2


就是一个分页用的!

#3


看不出来

#4


String username=(String)session.getAttribute("name");
String sqlck="select *from request where username="+username;
---------------------
这里似乎应该这样:
String sqlck="select *from request where username='"+username+"';";

至于你说的数组越界好象没看到,因为这里一个数组都没有啊

#5


up..分页写个bean好点

#6


继续寻求帮助!
自己顶!

#1


晕,一下注释都没有!
帮你顶好了!

#2


就是一个分页用的!

#3


看不出来

#4


String username=(String)session.getAttribute("name");
String sqlck="select *from request where username="+username;
---------------------
这里似乎应该这样:
String sqlck="select *from request where username='"+username+"';";

至于你说的数组越界好象没看到,因为这里一个数组都没有啊

#5


up..分页写个bean好点

#6


继续寻求帮助!
自己顶!