java - Tomcat/Java - 插入 mysql 数据库

标签 java mysql tomcat

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>


+----------+----------+
| 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,我有一个接受用户名和密码的简单表单。我希望能够从表单中检索用户名和密码并将其插入到 mysql 数据库中。但是,现在单击表单上的提交按钮后,什么也没有发生,数据库也没有更新。数据库连接工作正常,所以我不确定现在的问题是什么。任何帮助将不胜感激。

最佳答案

您正在从 HTML 表单调用 GET 方法。

将您的操作更改为 POST。

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

关于java - Tomcat/Java - 插入 mysql 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43327342/

相关文章:

java - 使用 Appium 进行自动化时无法更改我的 Android 应用程序的个人资料图像

php - 如何基于列之间的多个关系进行查询-MySQL?

Java Hibernate - 使用子查询进行复杂的更新

java - 准备语句回调; JDBC Spring 中的错误 SQL 语法

Java泛型问题

javascript - 不知道如何在 Javascript 中执行 ajax 函数来访问 mysql

mysql - 插入时根据其他列计算字段值

部署到文件夹后,Java Web Servlet 不工作

java - 如何在 Tomcat 上将 Rserve 与 JSP 一起使用? (Windows 7的)

java - 如何即时远程使用户的 servlet session 无效?