源代码:
<%@page contentType="text/html;charset=gb2312"%>
<%@page import="java.sql.*"%>
<HTML><BODY>
<%
Connection conn=null;
Statement stmt=null;
ResultSet rs=null;
String strSQL="";
int PageSize=5;//表示每页当中允许的最多记录数
int Page=1; //Page表示的是第几页,当前的默认值是第一页
int totalPage=1; //表示总共的页数
int totalrecord=0; //表示总共的记录数
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(ClassNotFoundException ce){
out.print(ce.getMessage());
}
try{
conn=DriverManager.getConnection("jdbc:odbc:grade");
stmt=conn.createStatement(
ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_READ_ONLY);
//算出总行数
strSQL="select count(*) as recordcount from grade";
rs=stmt.executeQuery(strSQL);
if(rs.next())totalrecord=rs.getInt("recordcount");
//输出记录
strSQL="select * FROM grade";
rs=stmt.executeQuery(strSQL);
if(totalrecord%PageSize==0)//如果是当前页码的整数倍
totalPage=totalrecord/PageSize;
else //如果最后还空一页,即当有余数时,余数可以是1,2,3,4
totalPage=(int)Math.floor(totalrecord/PageSize)+1;
if(totalPage==0)totalPage=1;// totalPage=totalrecord/PageSize位0的时候,表示不满一页
if(request.getParameter("Page")==null||request.getParameter("Page").equals(""))
Page=1;
else
try{
Page=Integer.parseInt(request.getParameter("Page"));
}
catch(java.lang.NumberFormatException e){
//捕获用户从浏览器地址栏直接输入Page=sdfsdfsdf所造成的异常
Page=1;
}
if(Page<1) Page=1;
if(Page>totalPage) Page=totalPage;
rs.absolute((Page-1)*PageSize+1);//跳到第Page页
out.print("<TABLE BORDER='1'>");
for(int iPage=1;iPage<=PageSize;iPage++)
{
request.setCharacterEncoding("GBK");
out.print("<tr><td>"+rs.getString("学号")+"</td>");
out.print("<td>"+rs.getString("姓名")+"</td>");
out.print("<td>"+rs.getString("语文")+"</td>");
out.print("<td>"+rs.getString("数学")+"</td>");
out.print("<td>"+rs.getString("英语")+"</td></tr>");
if(!rs.next()) break;
}
out.print("</TABLE>");
}
catch(SQLException e){
System.out.println(e.getMessage());
}
finally{
stmt.close();
conn.close();
}
%>
<FORM Action="7-09.jsp" Method="GET">
<%
if(Page!=1){
out.print("<A HREF=7-09.JSP?Page=1>第一页</A>");
out.print("<A HREF=7-09.JSP?Page="+(Page-1)+">上一页</A>");if(Page!=totalPage){
out.print("<A HREF=7-09.JSP?Page="+(Page+1)+">下一页</A>");
out.print("<A HREF=7-09.JSP?Page="+totalPage+">最后一页</A>");
}
%>
<BR>输入页数:<input TYPE="TEXT"Name="Page"SIZE="3">
页数:<font COLOR="RED"><%=Page%>/<%=totalPage%><font>
</FORM>
错误提示::
exception org.apache.jasper.JasperException: Unable to compile class for JSPGenerated servlet error:
C:\Program Files\Tomcat 5.0\work\Catalina\localhost\_\org\apache\jsp\JSP\_7_002d09_jsp.java:137: 'catch' without 'try'
} catch (Throwable t) {
^
Generated servlet error:
C:\Program Files\Tomcat 5.0\work\Catalina\localhost\_\org\apache\jsp\JSP\_7_002d09_jsp.java:31: 'try' without 'catch' or 'finally'
try {
^
Generated servlet error:
C:\Program Files\Tomcat 5.0\work\Catalina\localhost\_\org\apache\jsp\JSP\_7_002d09_jsp.java:149: '}' expected
^
3 errors org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:84)
org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:332)
org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:412)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:472)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:451)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:439)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:511)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:295)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
<%@page contentType="text/html;charset=gb2312"%>
<%@page import="java.sql.*"%>
<HTML><BODY>
<%
Connection conn=null;
Statement stmt=null;
ResultSet rs=null;
String strSQL="";
int PageSize=5;//表示每页当中允许的最多记录数
int Page=1; //Page表示的是第几页,当前的默认值是第一页
int totalPage=1; //表示总共的页数
int totalrecord=0; //表示总共的记录数
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(ClassNotFoundException ce){
out.print(ce.getMessage());
}
try{
conn=DriverManager.getConnection("jdbc:odbc:grade");
stmt=conn.createStatement(
ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_READ_ONLY);
//算出总行数
strSQL="select count(*) as recordcount from grade";
rs=stmt.executeQuery(strSQL);
if(rs.next())totalrecord=rs.getInt("recordcount");
//输出记录
strSQL="select * FROM grade";
rs=stmt.executeQuery(strSQL);
if(totalrecord%PageSize==0)//如果是当前页码的整数倍
totalPage=totalrecord/PageSize;
else //如果最后还空一页,即当有余数时,余数可以是1,2,3,4
totalPage=(int)Math.floor(totalrecord/PageSize)+1;
if(totalPage==0)totalPage=1;// totalPage=totalrecord/PageSize位0的时候,表示不满一页
if(request.getParameter("Page")==null||request.getParameter("Page").equals(""))
Page=1;
else
try{
Page=Integer.parseInt(request.getParameter("Page"));
}
catch(java.lang.NumberFormatException e){
//捕获用户从浏览器地址栏直接输入Page=sdfsdfsdf所造成的异常
Page=1;
}
if(Page<1) Page=1;
if(Page>totalPage) Page=totalPage;
rs.absolute((Page-1)*PageSize+1);//跳到第Page页
out.print("<TABLE BORDER='1'>");
for(int iPage=1;iPage<=PageSize;iPage++)
{
request.setCharacterEncoding("GBK");
out.print("<tr><td>"+rs.getString("学号")+"</td>");
out.print("<td>"+rs.getString("姓名")+"</td>");
out.print("<td>"+rs.getString("语文")+"</td>");
out.print("<td>"+rs.getString("数学")+"</td>");
out.print("<td>"+rs.getString("英语")+"</td></tr>");
if(!rs.next()) break;
}
out.print("</TABLE>");
}
catch(SQLException e){
System.out.println(e.getMessage());
}
finally{
stmt.close();
conn.close();
}
%>
<FORM Action="7-09.jsp" Method="GET">
<%
if(Page!=1){
out.print("<A HREF=7-09.JSP?Page=1>第一页</A>");
out.print("<A HREF=7-09.JSP?Page="+(Page-1)+">上一页</A>");if(Page!=totalPage){
out.print("<A HREF=7-09.JSP?Page="+(Page+1)+">下一页</A>");
out.print("<A HREF=7-09.JSP?Page="+totalPage+">最后一页</A>");
}
%>
<BR>输入页数:<input TYPE="TEXT"Name="Page"SIZE="3">
页数:<font COLOR="RED"><%=Page%>/<%=totalPage%><font>
</FORM>
错误提示::
exception org.apache.jasper.JasperException: Unable to compile class for JSPGenerated servlet error:
C:\Program Files\Tomcat 5.0\work\Catalina\localhost\_\org\apache\jsp\JSP\_7_002d09_jsp.java:137: 'catch' without 'try'
} catch (Throwable t) {
^
Generated servlet error:
C:\Program Files\Tomcat 5.0\work\Catalina\localhost\_\org\apache\jsp\JSP\_7_002d09_jsp.java:31: 'try' without 'catch' or 'finally'
try {
^
Generated servlet error:
C:\Program Files\Tomcat 5.0\work\Catalina\localhost\_\org\apache\jsp\JSP\_7_002d09_jsp.java:149: '}' expected
^
3 errors org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:84)
org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:332)
org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:412)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:472)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:451)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:439)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:511)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:295)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
if(Page!=1){
out.print("<A HREF=7-09.JSP?Page=1>第一页</A>");
out.print("<A HREF=7-09.JSP?Page="+(Page-1)+">上一页</A>");}//这里有回括的呀。别的还没看
Page=1;
else //这边的 {呢?
try{
Page=Integer.parseInt(request.getParameter("Page"));