【发布时间】:2020-06-02 06:06:04
【问题描述】:
我正在接近打印从 Servlet 传递的 JSP 表中的对象,但是由于某种原因它们没有打印。
我已确认 servlet 确实将数据保存到列表中,但我尚未确认该列表是否已成功传递给 JSP,或者我是否在打印对象时出错。
这是我的 JSP 页面代码(listProduct 是从 Servlet 传递的列表):
<% List newList = (List)session.getAttribute("listProduct");%>
<c:forEach items="${listProduct}" var="Product">
<tr>
<td><c:out value="${Product.productId}" /></td>
<td><c:out value="${product.productType}" /></td>
<td><c:out value="${product.productPrice}" /></td>
<td><c:out value="${product.vendorName}" /></td>
<td><c:out value="${product.productName}" /></td>
<td><c:out value="${product.productDescription}" /></td>
<td><c:out value="${product.stockLevel}" /></td>
<td><c:out value="action" /></td>
<td>
<a href="/edit?id=<c:out value='${product.productId}' />">Edit</a>
<a href="/delete?id=<c:out value='${product.prodictId}' />">Delete</a>
</td>
</tr>
</c:forEach>
我在 JSP 中的“newList”也未使用,但其他教程中有,即使我尝试将 newList 用于未注册的表,它仍然说 newList 未使用。
任何指点或帮助将不胜感激。
编辑:更多信息(Servlet 代码)
我已经包含了创建列表并将其发送到 jsp 页面的 servlet 代码 - 以防问题出在此处。
List<Product> listProduct = db.listProducts();
request.setAttribute("listProduct", listProduct);
RequestDispatcher requestDispatcher = request.getRequestDispatcher("displayProduct.jsp");
requestDispatcher.forward(request, response);
**db 是 DAO。 编辑 2 DAO 代码:此代码向 servlet 提供数组列表。
public List<Product> listProducts() throws SQLException {
List<Product> listProduct = new ArrayList<>();
String sql = "SELECT * FROM PRODUCT";
ResultSet rs = st.executeQuery(sql);
while (rs.next()) {
int productId = rs.getInt("productId");
double productPrice = rs.getDouble("PRODUCTPRICE");
String productType = rs.getString("productType");
String vendorName = rs.getString("vendorName");
String productName = rs.getString("productName");
String productDescription = rs.getString("productDescription");
int stockLevel = rs.getInt("stockLevel");
Product product = new Product(productId, productPrice, productType, vendorName, productName, productDescription, stockLevel);
listProduct.add(product);
}
return listProduct;
另一个编辑!! : 我确认问题在于 JSP 表部分中的编码,因为 arraylist 已成功发送到 JSP 页面 - 但现在唯一的问题是根据属性在表中打印它。
【问题讨论】: