【发布时间】:2010-10-16 05:36:08
【问题描述】:
如何在 jsp 中正确呈现不同类型的对象列表?比如说,我必须按照指定的顺序渲染这些不同的对象。
一种方法是使用通用类型变量或 instanceof,但这意味着使用大的 switch/if 语句来管理它们:
<c:forEach var="o" items="${bigListofObjects}" >
<c:choose>
<c:when test='${o.type=="simple"}' >
<!-- render simple -->
</c:when>
<c:when test='${o.type=="complex"}' >
<!-- render complex -->
</c:when>
<!-- etc etc ... -->
</c:choose>
</c:forEach>
我可以为每个类添加一个 render() 方法,但这意味着将视图与其余代码混合。
如果我想稍后渲染另一种类型会怎样?我可以用自定义 jsp 标签做些什么吗?
【问题讨论】: