данные не вставляются из сервлета в таблицу MySQL - PullRequest
1 голос
/ 06 апреля 2019

Я пытаюсь создать страницу регистрации, используя сервлеты Java, базу данных mysql.вот часть моего кода сервлета.Нет вывода ошибок.правильный путь к базе данных

 String uName = request.getParameter("username");
    String pass = request.getParameter("passwd");
    String rpass = request.getParameter("rpasswd");
    String email = request.getParameter("email");
        try {
           Class.forName("com.mysql.cj.jdbc.Driver");
            final String DB_URL = "jdbc:mysql://127.0.0.1:3306/userData";
            Connection con = DriverManager.getConnection(DB_URL, "serv", "serv");
            String sql = "INSERT INTO users (username, password, em) values (?, ?, ?)";
            PreparedStatement stat = con.prepareStatement(sql);
            stat.setString(1, uName);
            stat.setString(2, pass);
            stat.setString(3,email);
            con.close();
        }
        catch(SQLException e) {
            System.out.println(e);
        } catch (ClassNotFoundException e) {
            System.out.println(e);
        }

1 Ответ

3 голосов
/ 06 апреля 2019
String uName = request.getParameter("username");
String pass = request.getParameter("passwd");
String rpass = request.getParameter("rpasswd");
String email = request.getParameter("email");
Class.forName("com.mysql.cj.jdbc.Driver");
final String DB_URL = "jdbc:mysql://127.0.0.1:3306/userData";
try (Connection con = DriverManager.getConnection(DB_URL, "serv", "serv")) {
    final String sql = "INSERT INTO users (username, password, em) values (?, ?, ?)";
    final PreparedStatement stat = con.prepareStatement(sql);
    stat.setString(1, uName);
    stat.setString(2, pass);
    stat.setString(3, email);
    stat.execute(); // you miss this
} catch(Exception e) {
    System.out.println(e);
}

Из javadoc PreparedStatement *1003*, execute() выполняет оператор SQL в этом объекте PreparedStatement, который может быть любым оператором SQL.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...