//index.jsp
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>无标题文档</title>
</head><body>
<div align="center">
  <p><font size="+7">Jsp GuestBook</font> </p>
  <table width="75%" border="1">
    <tr>
      <td width="28%"><div align="right">Name:</div></td>
      <td width="72%"><form method="post" action="index.jsp">
          <input type="text" name="name">
        </td>
    </tr>
    <tr>
      <td><div align="right">email:</div></td>
      <td>
          <input type="text" name="email">
        </td>
    </tr>
    <tr>
      <td><div align="right">Site Url:</div></td>
      <td>
          <input type="text" name="url" value="http://">
        </td>
    </tr>
    <tr>
      <td>what do you want to say?</td>
      <td>
          <textarea name="body" cols="30"  rows="5"></textarea>
       </td>
    </tr>
    <tr>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
    </tr>
    <tr>
      <td>&nbsp;</td>
      <td>
          <div align="left">
            <input type="submit" name="send" value="提交">
            <input type="reset" name="reset" value="重置">
          </div>
       </td>
    </tr>
  </table>
  <hr>
  <%@ page contentType="text/html;charset=gb2312"%>
  <%@ page language="java" import="java.sql.*"%>
  <jsp:useBean id="sqlbean" scope="page" class="jsp.mysql"/>
  <%! String name,email,url,body,sql;%>
  <%! int id;%>
  
  <%
  name=null;
  name=request.getParameter("name");
  %>
  <%
  if(name!=null&&name!=" ")
  {
   name=new String(request.getParameter("name").getBytes("8859_1"));
   email=new String(request.getParameter("email").getBytes("8859_1"));
   url=new String(request.getParameter("url").getBytes("8859_1"));
   body=new String(request.getParameter("body").getBytes("8859_1"));
   sql="insert into guestbook(Name,Email,Url,Body)values('"+name+"','"+email+"','"+url+"','"+body+"')";
   sqlbean.executeQuery(sql);
   sqlbean.sqlclose();
   
   }else{
   out.print("<b><font color=red>Please enter your name,email and body!!!!!</font></b>");
   }
   %>
   
  
  
  
  
  <p><font size="4"><b><a href="./index.jsp#see">See My Guestbook</a></b></font></p>
  
  <%
  ResultSet RS=sqlbean.executeQuery("SELECT * FROM guestbook ORDER BY RecordID DESC");
  
  while (RS.next()){
  
   name=new String(RS.getString("name").getBytes("8859_1"));
   email=new String(RS.getString("email").getBytes("8859_1"));
   url=new String(RS.getString("url").getBytes("8859_1"));
   body=new String(RS.getString("body").getBytes("8859_1"));
   %>
   
   <table border=1>
   <tr>
   <td>Name:
  </td><td><%=name %>
  </tr>
  <tr>
  <td>Email:</td><td><a href="mailto:<%=email %>"><%=email %></a></td></tr>
  <tr>
  <td>SiteUrl:</td><td><a href="<%=url%>"></a></td></tr>
  <tr>
  <td>Body:</td><td><%=body%></td></tr></table>
  
  <hr>
  <%
  }
  
  RS.close();
  sqlbean.sqlclose();
  %>
  
  
</div>
</body>
</html>

解决方案 »

  1.   

    //mysql.java
    package jsp;
    import java.sql.*;
    public class mysql 
    {String login="sa",password="";
    String strDbdriver="sun.jdbc.odbc.JdbcOdbcDriver";
    String url="jdbc:odbc:guestbook";public Connection connection = null;
    public Statement  st=null;
    public ResultSet rs = null;public  mysql() {
    try {//--read db info from config file-------------
                 
    Class.forName(strDbdriver).newInstance();DriverManager.setLoginTimeout(10);}catch(Exception e) {
       e.printStackTrace();
    }
    }
    public void sqlclose(){
    try { st.close();
    connection.close();
        }catch (SQLException ex)
    {
    System.err.println("sqlclose:" + ex.getMessage());
    }
    }//----query------------------
    public ResultSet executeQuery(String sql) {try{connection = DriverManager.getConnection(url,login,password); 
     st=connection.createStatement();
    rs=st.executeQuery(sql);
    }catch (SQLException ex)
    {
    System.err.println("aq.executeQuery:" + ex.getMessage());
    }return rs;
    }//-----Update-------
    public void executeUpdate(String sql)
    { try
    {
    connection = DriverManager.getConnection(url,login,password);
    st = connection.createStatement();
    st.executeUpdate(sql);


    }
    catch (SQLException ex)
    {
    System.err.println("aq.executeUpdate: " + ex.getMessage());
    }
    }}