Вставка данных с использованием JSP (Eclipse) в базу данных (XAMPP, MySQL)

0

Поэтому я пытаюсь зарегистрировать (вставить) запись из формы JSP в базу данных (XAMPP, MySQL). Подробности:

register.jsp

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>

    <form action = "RegisterController" method = "post">
        <input type = "text" name = "email" placeholder = "Your e-mail"><br><br>
        <input type = "text" name = "firstname" placeholder = "First name"><br><br>
        <input type = "text" name = "lastname" placeholder = "Last name"><br><br>
        <input type = "text" name = "address" placeholder = "Home address"><br><br>
        <input type = "text" name = "phone" placeholder = "Your phone number"><br><br>
        <input type = "password" name = "password"><br><br>
        <input type = "submit" name = "submit" value = "Register">
    </form>

</body>
</html>

RegisterController.java

package cms.com;

import java.io.IOException;


import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;

import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * Servlet implementation class RegisterController
 */
public class RegisterController extends HttpServlet {
    private static final long serialVersionUID = 1L;

    /**
     * @see HttpServlet#HttpServlet()
     */
    public RegisterController() {
        super();
        // TODO Auto-generated constructor stub
    }

    /**
     * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // TODO Auto-generated method stub
    }

    /**
     * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

        try{

            String email = request.getParameter("email");
            String firstname = request.getParameter("firstname");
            String lastname = request.getParameter("lastname");
            String address = request.getParameter("address");
            String phone = request.getParameter("phone");
            String password = request.getParameter("password");
            String sql = "insert into users(email,firstname,lastname,address,phone,password) values(?,?,?,?,?,?)";
            Class.forName("com.mysql.jdbc.Driver");
            Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/cms","root","");
            PreparedStatement pst = conn.prepareStatement(sql);

            pst.setString(1,email);
            pst.setString(2,firstname);
            pst.setString(3,lastname);
            pst.setString(4,address);
            pst.setString(5, phone);
            pst.setString(6, password);

            pst.executeUpdate();
            PrintWriter out = response.getWriter();
            out.println("You have successfully registered!");

        }
        catch(ClassNotFoundException e){
            e.printStackTrace();
        }
        catch(SQLException e){
            e.printStackTrace();
        }
     }

}

Поэтому, когда я запускаю локальный хост и вводил подробные данные, он отображал только пустую страницу, и в таблице не было никакого обновления. В результате не было ошибок, а также во время выполнения. Я использую Eclipse Luna с динамическим модулем 2.5 и Apache Tomcat 7.0.

Теги:
jsp
servlets

1 ответ

0

Вы должны добавить Mysql jar в свой проект, и вам нужно сопоставить файл RegisterController в файле WebContent\WEB-INF\Web.xml (WebContent\WEB-INF\Web.xml)

а также проверить путь в "form action" в Register.jsp и "url-pattern" в Web.xml оба должны быть одинаковыми.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню