【问题标题】:Update in jsp from Servlet not working从Servlet更新jsp不起作用
【发布时间】:2015-11-02 11:33:23
【问题描述】:

我有两个 servlet BookSaleAuction 和 MemberServlet 以及一些用于插入和更新为 index.jsp 和 MemberDetailUpdate.jsp 的 jsp 文件和
在 MemberDetailUpdate.jsp 中

<form method= "post" action="/booksaleauction">
  UserName : <input type="text" name="name" value="<%=editname%>">
  Address : <input type="text" name="address" value="<%=address%>">
  Contact : <input type="tel" name="contactNo" value="<%=contact%>">
  Email : <input type="email" name="email" value="<%=editemail%>">
  <input type="hidden" name="id" value="<%=editID%>">
  <input type="hidden" name="formAction" value="update">

  <input type="submit" name="Update">
</form>

在 BookSaleAuctionServlet 中

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    String form = request.getParameter("formAction");
    System.out.print(form);
}

在 MemberServlet 中

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        System.out.print("into member servlet ");
        String name = request.getParameter("name");
        String address = request.getParameter("address");
        String contact = request.getParameter("contactNo");
        String email = request.getParameter("email");
        String id = request.getParameter("id");

        try {
            Class.forName("com.mysql.jdbc.Driver");
        } catch (ClassNotFoundException e) {
            System.out.println("Class not found " + e);
        }
        System.out.println("JDBC Class found");
        Connection con = null;
        PreparedStatement ps = null;
        ResultSet rs = null;
        Statement st = null;

        try {
            con = DriverManager.getConnection("jdbc:mysql://localhost/logins", "root", "");
            String sql = "UPDATE members SET username=?, email=?, contact=?, address=? WHERE id=?";
           // ps = con.prepareStatement("UPDATE Users SET password=?, fullname=?, email=? WHERE id=id");
            PreparedStatement statement = con.prepareStatement(sql);
            statement.setString(1, name);
            statement.setString(2, email);
            statement.setString(3, contact);
            statement.setString(4, address);


            int rowsUpdated = statement.executeUpdate();
            if (rowsUpdated > 0) {
                System.out.println("An existing user was updated successfully!");
            }

        } catch (SQLException e) {
            System.out.println("SQL exception occured" + e);
        }
        try {
            request.getRequestDispatcher("MemberDetail.jsp").forward(request, response);

        } catch (Exception e) {
            System.out.println("SQL exception occured" + e);
        }

在两个 servlet 中,只要在 jsp 中完成更新,就没有任何进一步的操作正在完成。即使我将操作和方法更改为从另一个 servlet BookSaleAuction 运行,它也不适用于表单。请帮助我不知道我犯了什么错误。

【问题讨论】:

    标签: java spring jsp servlets


    【解决方案1】:

    【讨论】:

    • 谢谢,但我已经在数据库中完成了插入操作,但它不适用于更新。我只是想知道为什么它不工作并让它工作。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-01-22
    • 1970-01-01
    • 2015-11-18
    • 2023-03-09
    • 1970-01-01
    • 2020-04-21
    • 1970-01-01
    相关资源
    最近更新 更多