如何使用J+MySQL创建留言本(二)_JSP技巧_黑客防线网安服务器维护基地--Powered by WWW.RONGSEN.COM.CN

如何使用J+MySQL创建留言本(二)

作者:黑客防线网安JSP教程基地 来源:黑客防线网安JSP教程基地 浏览次数:0

本篇关键词:创建使用如何 
黑客防线网安网讯:有了数据库下面就要对数据库操作读取留言了!   下面列出显示留言的主要程序   <%@page import="java.sql.*"    import ="java.util.*"    import ="java.io.*"    contentType="...
有了数据库下面就要对数据库操作读取留言了!
   下面列出显示留言的主要程序
   <%@page import="java.sql.*"
   import ="java.util.*"
   import ="java.io.*"
   contentType="text/html; charset=gb2312"
   %>
   <html>
   <head>
   <title>萍慧自由空间留言本</title>
   <meta name="GENERATOR" content="Microsoft FrontPage 4.0">
   <meta name="ProgId" content="FrontPage.Editor.Document">
   <style type="text/css"><!--
   body { font-size: 9pt}
   td { font-size: 9pt}-->
   </style>
   </head>
   <body>
   <p align="center"><u><font size="5" face="华文新魏">萍慧自由空间留言本</font></u></p>
   <table width="75%" border="1" bgcolor="#FFCCFF" bordercolorlight="#0000FF"  
   bordercolordark="#6666FF" cellpadding="0" cellspacing="0" align="center">
   <tr>  
     <td colspan="5" height="202">
   <%//下面处理用户的分页请求
   String string_page;
   int Page,RecoderPage,RecoderRow;
   try{string_page=request.getParameter("page");
   }catch (NullPointerException e){string_page="";}
   try{Page=Integer.parseInt(string_page);
   }catch(NumberFormatException e)
   {Page=0;
   }
  
   java.sql.Connection sqlConn; //数据库连接对象
   java.sql.Statement sqlStmt; //语句对象
   java.sql.ResultSet sqlRst; //结果集对象
   //登记JDBC驱动对象
   Class.forName ("org.gjt.mm.mysql.Driver").newInstance ();
   //连接数据库
   sqlConn= java.sql.DriverManager.getConnection ("jdbc:mysql://localhost/p","test","");
   //创建语句对象
   sqlStmt=sqlConn.createStatement  
   (java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,java.sql.ResultSet.CONCUR_READ_ONLY);
   //执行Sql语句
   String sqlQuery="select count(*) from comment";
   sqlRst=sqlStmt.executeQuery (sqlQuery);
   sqlRst.next();
   int count=sqlRst.getInt(1); //取得总的留言记录数
   if (Page>=0)RecoderPage=Page;//处理页面
   else RecoderPage=0-Page*10;
   if (RecoderPage>count/15){ RecoderPage=count/15; Page=RecoderPage; }//页面越界
     
   RecoderRow=RecoderPage*15; //取得要显示的留言记录号
   sqlQuery="select * from comment order by userid desc limit "+RecoderRow+",15;"; //一次读取15条记录
   sqlRst=sqlStmt.executeQuery (sqlQuery);
   %> 总共有<%=count%>条留言  
   <% while (sqlRst.next()) //显示留言
   { //取得下一条记录 %> 第<%=sqlRst.getString("userid")%>条  
      <table width="95%" border="1" cellspacing="1" cellpadding="1"  
   bordercolorlight="#6666FF" bordercolordark="#6666FF" bgcolor="#CCCCFF" align="center">
       <tr>  
        <td width="25%">昵称:<%=sqlRst.getString("username")%></td>
        <td width="25%">性别:<%=sqlRst.getString("sex")%></td>
        <td colspan="2" width="50%">地址:<%=sqlRst.getString("address") %></td>
       </tr>
       <tr>  
        <td width="25%">电话:<%=sqlRst.getString("telnumber")%></td>
        <td width="25%">邮编:<%=sqlRst.getString("post")%></td>
        <td width="25%">OICQ:<%=sqlRst.getString("oicq")%></td>
        <td width="25%">ICQ:<%=sqlRst.getString("icq")%></td>
       </tr>
       <tr>  
        <td colspan="2" width="50%">Email:
   <a href="mailto:<%=sqlRst.getString("email")%>" title="写信给留言者"><%=sqlRst.getString("email")%></a></td>
        <td colspan="2" width="50%">网址:
   <a href target="_blank"></a><a href="mailto:<%=sqlRst.getString("url")%>" title="写信给留言者">
   <%=sqlRst.getString("urltitle")%></a></td>
       </tr>
       <tr>  
        <td colspan="4"><font style="line-height: 150%;color: green">
   留言:<%=sqlRst.getString("comment")%><br>
         &nbsp;&nbsp;&nbsp;&nbsp;-<%=sqlRst.getString("time") %>  
   (来自<%=sqlRst.getString("ip") %>)</font></td>
       </tr>
      </table>
      <hr align="center" noshade size="2" width="95%">
      <% } %> <%
   //下面对留言进行分页
   int i=count/15; //总页,每页显示15条记录
   int j=i/10; //总的大页 ,没10个页面分一大页
   //Page 显示的页面
   int StartPage;
   //int HrefPage;
   if (Page<0) Page=0-Page*10; //10页分一次
   StartPage=Page/10; //10页分一次
   out.print ("[共有"+(i+1)+"页]");
   //out.print ("共有"+j+"屏");
   //out.print ("显示第"+Page+"页");
   //out.print ("StartPage="+StartPage);
   if (StartPage>0)  
     out.print ("|<a href="connectmysql.jsp?page=-"+Integer.toString(StartPage-1)+"">前10页</a>");
   for (int k=0;k<10;k++)
   { int p=StartPage*10+k;
     if (p>i) break;
     if (p==Page)
      out.print ("|第"+Integer.toString(p+1)+"页");
     else
      out.print ("|<a href="connectmysql.jsp?page="+p+"">第"+Integer.toString(p+1)+"页</a>");
   }
   if (StartPage<j)  
     out.print ("|<a href="connectmysql.jsp?page=-"+Integer.toString(StartPage+1)+"">后10页</a>");
   out.print ("|");
   %> </td>
   </tr>
   </table>
   </body>
   <%
   //关闭结果集对象
     sqlRst.close();
     //关闭语句对象
   sqlStmt.close ();
   //关闭数据库连接
   sqlConn.close();
   %> 程序结束
   程序中的不足:
   没有对错误进行捕捉但是这里只为了对jsp读取Mysql数据库进行讲解如果是用与作留言本的话一定要对错误进行处理! 我们还要留言呢?
  
    黑客防线网安服务器维护方案本篇连接:http://www.rongsen.com.cn/show-16536-1.html
网站维护教程更新时间:2012-04-07 00:33:11  【打印此页】  【关闭
我要申请本站N点 | 黑客防线官网 |  
专业服务器维护及网站维护手工安全搭建环境,网站安全加固服务。黑客防线网安服务器维护基地招商进行中!QQ:29769479

footer  footer  footer  footer