2015-10-14 63 views
1

我有一個HTML頁面,其中新用戶被添加到數據庫,我通過JDBC-ODBCServlets完成了MS-Access連接。我沒有錯誤,但是這些值沒有保存在數據庫中。將NetBeans中的HTML與MSAcess連接起來

******* HTML文件*****

<html> 
    <head> 
     <title>TODO supply a title</title> 
     <meta charset="UTF-8"> 
     <meta name="viewport" content="width=device-width, initial-scale=1.0"> 
    </head> 
    <body> 
     <div> 
      <center><h1>login page</h1></center> 
      <form action="Serve" method="get"> 
      Username: <input type="text" name="username"><br> 
      Password: <input type="text" name="password"><br> 
      <button> Login</button> 
      </form> 
     </div> 
    </body> 
</html> 

*** JDBC-ODBC FILE ****

import java.sql.*; 
import java.util.logging.Level; 
import java.util.logging.Logger; 
import javax.swing.JOptionPane; 
public class base { 
    Connection con; 
    Statement st; 
    ResultSet rs; 
    String s; 

    public base() throws SQLException { 
     connect(); 
    } 

    private void connect() throws SQLException { 
     try { 
      //  throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. 
      Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); 
      con =DriverManager.getConnection("jdbc:odbc:db","",""); 
      st=con.createStatement(); 
     } catch (ClassNotFoundException ex) { 
      JOptionPane.showMessageDialog(null, ex); 
     } 
    } 
} 

***** SERVLETS * **

import java.io.IOException; 
import java.io.PrintWriter; 
import java.sql.SQLException; 
import java.util.logging.Level; 
import java.util.logging.Logger; 
import javax.servlet.ServletException; 
import javax.servlet.annotation.WebServlet; 
import javax.servlet.http.HttpServlet; 
import javax.servlet.http.HttpServletRequest; 
import javax.servlet.http.HttpServletResponse; 
import javax.swing.JOptionPane; 
@WebServlet(name = "Serve", urlPatterns = {"/Serve"}) 
public class Serve extends HttpServlet { 

    protected void processRequest(HttpServletRequest request, HttpServletResponse response) 
      throws ServletException, IOException { 
     try { 
      response.setContentType("text/html;charset=UTF-8"); 
      PrintWriter out = response.getWriter(); 
      base s = new base(); 
      s.s="insert into Table1 values("+request.getParameter("name")+","+request.getParameter("pass")+")"; 
      s.st.executeQuery(s.s); 
     } catch (SQLException ex) { 
      JOptionPane.showMessageDialog(null, ex); 
     } 


    } 

    // <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code."> 
    /** 
    * Handles the HTTP <code>GET</code> method. 
    * 
    * @param request servlet request 
    * @param response servlet response 
    * @throws ServletException if a servlet-specific error occurs 
    * @throws IOException if an I/O error occurs 
    */ 
    @Override 
    protected void doGet(HttpServletRequest request, HttpServletResponse response) 
      throws ServletException, IOException { 
     processRequest(request, response); 
    } 

    /** 
    * Handles the HTTP <code>POST</code> method. 
    * 
    * @param request servlet request 
    * @param response servlet response 
    * @throws ServletException if a servlet-specific error occurs 
    * @throws IOException if an I/O error occurs 
    */ 
    @Override 
    protected void doPost(HttpServletRequest request, HttpServletResponse response) 
      throws ServletException, IOException { 
     processRequest(request, response); 
    } 

    /** 
    * Returns a short description of the servlet. 
    * 
    * @return a String containing servlet description 
    */ 
    @Override 
    public String getServletInfo() { 
     return "Short description"; 
    }// </editor-fold> 

} 

回答

0

問題是您從請求對象中獲取了錯誤的參數。

試試這個:

s.s="insert into Table1 values("+request.getParameter("username")+","+request.getParameter("password")+")"; 
相關問題