当前位置 : 主页 > 编程语言 > java >

如何在JSP中呈现递归集合

来源:互联网 收集:自由互联 发布时间:2021-06-25
我有一个后端服务,它返回一个Info对象.此Info对象具有FolderGroup对象列表,而FolderGroup对象又包含FolderGroup对象列表,依此类推. 基本上它是代表文件夹和子文件夹.但是在我的JSP页面中,我不知
我有一个后端服务,它返回一个Info对象.此Info对象具有FolderGroup对象列表,而FolderGroup对象又包含FolderGroup对象列表,依此类推.

基本上它是代表文件夹和子文件夹.但是在我的JSP页面中,我不知道它会呈现给我多少深度迭代.如何使用JSTL处理?

创建包含以下代码的JSP标记文件(WEB-INF / tags / folderGroups.tag):

<%@ attribute name="list" required="true" %>
<%@ taglib tagdir="/WEB-INF/tags" prefix="myTags" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<c:if test="${!empty list}">
    <ul>
    <c:forEach var="folderGroup" items="${list}">
        <li><c:out value="${folderGroup.name}"/></li>
        <myTags:folderGroups list="${folderGroup.subGroups}"/>
    </c:forEach>
    </ul>
</c:if>

标签以递归方式调用自身以生成文件夹树.

在你的JSP里面,做

<%@ taglib tagdir="/WEB-INF/tags" prefix="myTags" %>
...
<myTags:folderGroups list="${info.folderGroups}"/>
网友评论