在表格下方,创建一个表单,允许用户输入新的商品信息,包括商品名称、价格和商品信息。表单应该包含一个提交按钮,当用户点击提交按钮时,将表单数据发送到服务器端。 在服务器端,使用Servlet或者其他后端技术获取表单数据,并将其保存到数据库表中。 在保存成功后,将页面重定向到shopadmin.jsp页面,并刷新表格,显示所有已添加的商品信息,包括新添加的商品。这三步如何实现?
时间: 2023-12-06 18:02:18 浏览: 202
这三步的实现可以参考以下的步骤:
1. 在表格下方,创建一个表单,包含商品名称、价格和商品信息的输入框,以及一个提交按钮。表单的action属性应该指向一个Servlet或者其他后端处理程序的URL。
```html
<form method="post" action="AddProductServlet">
<label for="name">商品名称</label>
<input type="text" id="name" name="name">
<label for="price">价格</label>
<input type="number" id="price" name="price">
<label for="info">商品信息</label>
<textarea id="info" name="info"></textarea>
<input type="submit" value="提交">
</form>
```
2. 在服务器端,创建一个名为AddProductServlet的Servlet,并在其doPost方法中获取表单数据,并将其保存到数据库表中。可以使用JDBC或其他ORM框架来实现对数据库的操作。保存成功后,重定向到shopadmin.jsp页面,并在重定向时将一个参数success设置为true,以便在shopadmin.jsp页面中显示保存成功的消息。
```java
public class AddProductServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String name = request.getParameter("name");
int price = Integer.parseInt(request.getParameter("price"));
String info = request.getParameter("info");
// 将商品信息保存到数据库表中
ProductDAO dao = new ProductDAO();
Product product = new Product(name, price, info);
dao.addProduct(product);
// 重定向到shopadmin.jsp页面,并设置一个success参数
response.sendRedirect("shopadmin.jsp?success=true");
}
}
```
3. 在shopadmin.jsp页面中,检查参数success是否存在,并且为true。如果是,则显示保存成功的消息,并重新载入商品列表,以显示新添加的商品。可以使用JSTL标签库从数据库中获取商品信息,并将其显示在表格中。
```html
<c:if test="${param.success == 'true'}">
<div class="success-message">添加商品成功!</div>
</c:if>
<table>
<thead>
<tr>
<th>商品名称</th>
<th>价格</th>
<th>商品信息</th>
</tr>
</thead>
<tbody>
<c:forEach var="product" items="${products}">
<tr>
<td>${product.name}</td>
<td>${product.price}</td>
<td>${product.info}</td>
</tr>
</c:forEach>
</tbody>
</table>
<form method="post" action="AddProductServlet">
<!-- 表单输入框 -->
<input type="submit" value="提交">
</form>
```
需要注意的是,以上代码仅供参考,具体的实现方式可能因项目的具体需求而有所不同。
阅读全文