2017-04-10 29 views
0
package mycode; 
import java.sql.* 
import java.io.IOException; 
import java.io.PrintWriter; 
import javax.servlet.ServletException; 
import javax.servlet.http.HttpServlet; 
import javax.servlet.http.HttpServletRequest; 
import javax.servlet.http.HttpServletResponse; 

public class Login extends HttpServlet { 

private static final long serialVersionUID = -4546189621945422719L; 

String URL = "jdbc:mysql://127.0.0.1"; 
String USER = "root"; 
String PASS = "1234"; 

@Override 
protected void doGet(HttpServletRequest req,HttpServletResponse res) 
     throws IOException,ServletException{ 

} 

public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { 
    String username = req.getParameter("username"); 
    String password = req.getParameter("password"); 
    res.setContentType("text/html"); 
    PrintWriter out = res.getWriter(); 

    try { 
     Connection con = DriverManager.getConnection(URL, USER, PASS); 

     String sql = "INSERT INTO cloud.cloud_table (Username,Password)" + 
       "VALUES (?, ?)"; 
     PreparedStatement pst = con.prepareStatement(sql); 
     pst.setString(1, username); 
     pst.setString(2, password); 
     pst.executeUpdate(); 


     out.println("<html><body>"); 
     out.println("THANKS FOR CREATING AN ACCOUNT"); 
     out.println("</body></html>"); 
    } 
    catch (SQLException ex) { 
     ex.printStackTrace(); 
    } 

    } 
} 

<?xml version="1.0" encoding="UTF-8"?> 
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0"> 
<display-name>Login</display-name> 
<servlet> 
    <servlet-name>Login</servlet-name> 
    <servlet-class>mycode.Login</servlet-class> 
</servlet> 

<servlet-mapping> 
    <servlet-name>Login</servlet-name> 
    <url-pattern>/login</url-pattern> 
</servlet-mapping> 
<welcome-file-list> 
<welcome-file>index.html</welcome-file> 
<welcome-file>index.htm</welcome-file> 
<welcome-file>index.jsp</welcome-file> 
<welcome-file>default.html</welcome-file> 
<welcome-file>default.htm</welcome-file> 
<welcome-file>default.jsp</welcome-file> 

的Tomcat/Java的 - 插入到一個MySQL數據庫


+----------+----------+ 
| Username | Password | 
+----------+----------+ 
|   |   | 
+----------+----------+ 

<form action="login" method="GET"> 
    <div> 
     <h4>Please enter your password and username</h4> 
    </div> 
    <div> 
     Username <input name="username" type="text" /> 
    </div> 
    <div> 
     Password <input name="password" type="text" /> 
    </div> 
    <div> 
     <input type="submit" value="Submit" /> 
    </div> 
</form> 

用java和tomcat,我有一個簡單的表格,需要在一個用戶名中d密碼。我希望能夠從表單中檢索用戶名和密碼並將其插入到mysql數據庫中。但是,現在單擊表單上的提交按鈕後,什麼都不會發生,數據庫也不會更新。數據庫連接工作正常,所以我不知道現在的問題是什麼。任何幫助,將不勝感激。

+0

你能展示簡單的表單代碼嗎? – alayor

+0

如果您點擊提交併且什麼也沒有發生,您的html表單可能不工作。 – f1sh

+0

@alayor我已經添加了表單 –

回答

3

您正在從HTML表單調用GET方法。

將您的操作更改爲POST。

<form action="login" method="POST"> 
+0

謝謝你的回覆,不能相信我犯了這樣一個愚蠢的錯誤。無論如何,我現在已經糾正了,但我得到「java.sql.SQLException:找不到合適的驅動程序爲jdbc:mysql://127.0.0.1」錯誤 –

+0

您需要將MySQL驅動程序添加到類路徑。我建議你自己調查一下這個問題,並打開一個你找不到任何東西的新問題。 – alayor