+--------+-------+-----+
| Name |number |qty |
+--------+-------+-----+
| ab | 5 | 7 |
+--------+-------+-----+
| cd | 1 | 6 |
+--------+-------+-----+
| ef | 0 | 9 |
+--------+-------+-----+
| gh | 8 | 2 |
+--------+-------+-----+
我将Product中的所有数据添加到数组列表中,如下所示
public List<Product> search(){
List<Product> products = new ArrayList<Product>();
ResultSet rs = DAO.fetch("SELECT * FROM Products");
while (rs.next()) {
product = new Product();
product.setNumber(rs.getString("ProductNumber"));
product.setName(rs.getString("ProductName"));
product.setQty(rs.getString("ProductQty"));
products.add(product);
}
return products;
}
如何使用此功能在我的jsp中打印所有名称?
答案 0 :(得分:4)
您可以通过在控制器中说出以下声明来传递列表
List <Product> products = dao.search();
request.setAttribute("Products", products);
并且,在您的JSP中,您可以使用以下代码(我在考虑您知道如何在JSP页面上使用包含JSTL库)。
要使用JSTL Core库,您需要在JSP中添加以下行
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
然后您可以显示遍历传递的列表以显示所有产品。
<table>
<tr>
<th>Name</th>
<th>Number</th>
<th>Quantity</th>
</tr>
<c:forEach items="${Products}" var="product">
<tr>
<td><c:out value="${product.name}" /></td>
<td><c:out value="${product.number}" /></td>
<td><c:out value="${product.qty}" /></td>
</tr>
</c:forEach>
</table>
希望它有所帮助。
答案 1 :(得分:0)
将products
添加到appropriate scope并转发到您的jsp页面:
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
...
<table>
<thead>
<tr>
<th>Name</th>
<th>Number</th>
<th>Quantity</th>
</tr>
</thead>
<tbody>
<c:forEach items="${products}" var="product">
<tr>
<td>${product.name}</td>
<td>${product.number}</td>
<td>${product.qty}</td>
</tr>
</c:forEach>
</tbody>
</table>
顺便说一下,在这种情况下使用thead and tbody是有益的:
此划分使用户代理能够支持滚动表体 独立于桌子的头部和脚部。长桌时 打印时,可以在每个上重复表头和脚的信息 包含表格数据的页面。