在java CRUD Web应用程序

时间:2016-09-18 13:37:22

标签: java-ee crud

这是我的第一个基于Java的CRUD Web应用程序。我正在使用Eclipse,Tomcat EE服务器和MySQL数据库。该应用程序基本上包含具有名字,姓氏,出生日期,电话号码,电子邮件,地址的用户列表。 在这一点上,我希望能够将新用户添加到用户列表中,仍然无法找出问题所在,以及为什么我无法使其工作。 以下是涉及问题的代码的一部分。

这是servlet:  protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String page = ""; String action = request.getParameter("action"); if (action.equals("addUser")) { User user = new User(); user.setFirstName(request.getParameter("firstName")); user.setLastName(request.getParameter("lastName")); user.setPhoneNumber(request.getParameter("phoneNumber")); user.setEmail(request.getParameter("email")); String month = request.getParameter("month"); String day = request.getParameter("day"); String year = request.getParameter("year"); user.setDob(UserController.parseDate(month, day, year)); boolean addUs = dbUtil.addUser(user); if (addUs) { page = "/UsersList.jsp"; } else { page = "/AddUser.jsp"; } RequestDispatcher dispatcher = request.getRequestDispatcher(page); dispatcher.forward(request, response); } doGet(request, response); }

这是DAO实施:

@Override
public boolean addUser(User user) {
    try (Connection conn = DriverManager.getConnection(URL, USERNAME, PASSWORD);) {
        String query = "INSERT INTO users (firstName, lastName, dateOfBirth, phoneNumber, email)"
                + " VALUES (?, ?, ?, ?, ?);";
        PreparedStatement stmt = conn.prepareStatement(query);
        stmt.setString(1, user.getFirstName());
        stmt.setString(2, user.getLastName());
        stmt.setDate(3, (Date) user.getDob());
        stmt.setString(4, user.getPhoneNumber());
        stmt.setString(5, user.getEmail());
        stmt.executeQuery();
        return true;
    } catch (SQLException sqle) {
        System.err.println("Error with connection.");
        sqle.printStackTrace();
        return false;
    }

}

如果有必要,我准备分享任何其他信息。

0 个答案:

没有答案