我想使用reg.html上的注册按钮将具有名称和密码的人添加到数据库中。用户填写用户名和密码,然后按注册按钮,信息将被添加到数据库中。但是我的代码无法正常工作。

public void addPerson(String username, String password) {
    if (con == null) {
        System.out.println("no connection");
        connect();
    }
    try {
        Statement state = con.createStatement();
        ResultSet rs = state.executeQuery("INSERT INTO users VALUES ('" +      username + "', '" + password + "'");
        rs.next();

    } catch (Exception e) {
        e.printStackTrace();

    }

}


这是reg.jsp

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
<h1>Hello World!</h1>
<jsp:useBean id="bean1" scope="session" class="veri.kisi" />
<jsp:setProperty name="bean1" property="username"/>
<jsp:setProperty name="bean1" property="password" />

</body>
</html>


这是kisi.java

public void insertPerson() {
    DatabaseLayer layer = new DatabaseLayer();
    layer.addPerson(username, password);
}

最佳答案

在进行任何更新之前,我建议您将con.autocommit设置为false。然后使用state.executeUpdate();它将返回一个int类型。检查int是否>0。然后仅通过调用con.commit()来执行提交作业。

10-07 18:47