如何在JSP文件中以表格格式显示列表内容?
在Action.java文件中,正在使用以下代码。
request.setAttribute("TAREWEIGHT", tareWeightList); request.setAttribute("BARCODE", barcodeList);
return (mapping.findForward(target));
tareWeightList和BarcodeList实际上包含几个值。将列表值设置为属性后,java文件会将内容转发到JSP文件。
在JSP文件中,我可以使用下面的行获取内容,
<%=request.getAttribute("TAREWEIGHT")%><%=request.getAttribute("BARCODE") %>
我的要求是,该列表的内容应以表格格式显示。
第一列中的条形码值和第二列中的对应的皮重值。
向我提出一个在JSP文件中编写代码的想法,以便使内容以列表格式显示。
回答:
使用HTML <table>
元素表示HTML中的表格。使用JSTL <c:forEach>
遍历JSP中的列表。
例如
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>...
<table>
<c:forEach items="${list}" var="item">
<tr>
<td><c:out value="${item}" /></td>
</tr>
</c:forEach>
</table>
您的代码中只有一个设计缺陷。您已将相关数据划分为2个独立的列表。最终的方法会像
<table> <c:forEach items="${TAREWEIGHT}" var="tareWeight" varStatus="loop">
<c:set var="barCode" value="${BARCODE[loop.index]}" />
<tr>
<td><c:out value="${tareWeight}" /></td>
<td><c:out value="${barCode}" /></td>
</tr>
</c:forEach>
</table>
我建议创建一个自定义类以将相关数据存储在一起。例如
public class Product { private BigDecimal tareWeight;
private String barCode;
// Add/autogenerate getters/setters/equals/hashcode and other boilerplate.
}
因此您最终得到一个List<Product>
可以表示为的:
<table> <c:forEach items="${products}" var="product">
<tr>
<td><c:out value="${product.tareWeight}" /></td>
<td><c:out value="${product.barCode}" /></td>
</tr>
</c:forEach>
</table>
将其放入请求范围后,如下所示:
request.setAttribute("products", products);
以上是 如何在JSP文件中以表格格式显示列表内容? 的全部内容, 来源链接: utcz.com/qa/398903.html