📄 index.jsp
字号:
<%@page contentType="text/html;charset=gb2312"%>
<%@page import="java.sql.*"%>
<HTML><BODY>
<%
request.setCharacterEncoding("GBK");
Connection conn = null;
Statement stmt = null;
ResultSet rs = null;
String strSQL1 = "";
String strSQL2 = "";
String strkeyword=request.getParameter("keyword");
String strclassid=request.getParameter("classid");
out.println(strkeyword);
out.println(strclassid);
int PageSize = 5;
int Page = 1;
int totalPage = 1;
int totalrecord = 0;
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(ClassNotFoundException ce){
out.println(ce.getMessage());
}
try{
conn=DriverManager.getConnection("jdbc:odbc:webbook");
stmt=conn.createStatement(
ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_READ_ONLY);
//算出总行数
strSQL1 = "SELECT count(*) as recordcount FROM book where 1=1";
strSQL2= "SELECT * FROM book where 1=1";
if(strkeyword.equals("")&&strclassid.equals(""))
{
strSQL1=strSQL1;
strSQL2=strSQL2;
}
if(strkeyword.equals("")&&!strclassid.equals(""))
{
strSQL1=strSQL1+" and BookClass='"+strclassid+"'";
strSQL2=strSQL2+" and BookClass='"+strclassid+"'";
}
if(!strkeyword.equals("")&&strclassid.equals(""))
{
strSQL1=strSQL1+" and BookName like '%"+strkeyword+"%'";
strSQL2=strSQL2+" and BookName like '%"+strkeyword+"%'";
}
if(!strkeyword.equals("")&&!strclassid.equals(""))
{
strSQL1=strSQL1+" and BookName like '%"+strkeyword+"%' and BookClass='"+strclassid+"'";
strSQL2=strSQL2+" and BookName like '%"+strkeyword+"%' and BookClass='"+strclassid+"'";
}
//out.print(strSQL1+"<br>");
//out.print(strSQL2+"<br>");
//out.close();
rs = stmt.executeQuery(strSQL1);
if (rs.next()) totalrecord = rs.getInt("recordcount");
//输出记录
rs = stmt.executeQuery(strSQL2);
if(totalrecord % PageSize ==0)// 如果是当前页码的整数倍
totalPage = totalrecord / PageSize;
else // 如果最后还空余一页
totalPage = (int) Math.floor( totalrecord / PageSize ) + 1;
if(totalPage == 0) totalPage = 1;
//out.print(request.getParameter("Page"));
//out.close();
if(request.getParameter("Page")==null || request.getParameter("Page").equals(""))
Page = 1;
else
{
try {
Page = Integer.parseInt(request.getParameter("Page"));
}
catch(java.lang.NumberFormatException e){
System.out.print(e.toString());
out.print("aaaaaaaaaaaaaa");
// 捕获用户从浏览器地址拦直接输入Page=sdfsdfsdf所造成的异常
Page = 1;
}
}
if(Page < 1) Page = 1;
if(Page > totalPage) Page = totalPage;
rs.absolute((Page-1) * PageSize + 1);
out.print("<TABLE BORDER='1'>");
out.print("<TR><th>书名</th>");
out.print("<th>类别</Th>");
out.print("<th>作者</th>");
out.print("<th>出版社</th>");
out.print("<th>价格</th></TR>");
for(int iPage=1; iPage<=PageSize; iPage++)
{
out.print("<TR><TD>"+rs.getString("BookName")+"</TD>");
out.print("<TD>"+rs.getString("BookClass")+"</TD>");
out.print("<TD>"+rs.getString("Author")+"</TD>");
out.print("<TD>"+rs.getString("Publish")+"</TD>");
out.print("<TD>"+rs.getString("Prince")+"</TD></TR>");
if(!rs.next()) break;
}
out.print("</TABLE>");
}
catch(SQLException e)
{
System.out.println(e.getMessage());
}
finally
{
stmt.close();
conn.close();
}
%>
<FORM Action="index.jsp" Method="GET">
<%
if(Page != 1)
{
out.print("<A HREF=index.jsp?Page=1&&keyword="+strkeyword+"&&classid="+strclassid+">第一页</A>");
out.print("<A HREF=index.jsp?Page=" + (Page-1) + "&&keyword="+strkeyword+"&&classid="+strclassid+">上一页</A>");
}
if(Page != totalPage)
{
out.print("<A HREF=index.jsp?Page=" + (Page+1) +"&&keyword="+strkeyword+"&&classid="+strclassid+">下一页</A>");
out.print("<A HREF=index.jsp?Page=" + totalPage +"&&keyword="+strkeyword+"&&classid="+strclassid+">最后一页</A>");
}
%>
</FORM>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -