Выполните итерации по элементам Списка и Карты с помощью тега JSTL <c:forEach>

Если у меня есть JSF отступающий бобовый возврат объект типа ArrayList, я должен смочь использовать выполнить итерации по элементам в списке. Каждый элемент содержит карту и хотя на вопрос того, как получить доступ к содержанию карты через JSTL, ответили здесь, если я передаю массив таких карт, я не могу найти, как выполнить итерации по ним и все еще получить доступ к содержанию карты, использующему JSTL. Существует документация, которая относится к простым итераторам, но не к тем, объекты которых являются самостоятельно картами.

Если кто-либо может дать мне простой пример того, как Список Java выполнен с помощью итераций в JSP, я был бы в широком масштабе благодарен. Mark

50
задан Community 23 May 2017 в 01:47
поделиться

1 ответ

Марка, это уже отвечает в вашу предыдущую тему . Но в порядке, вот опять:

предположить, что pupa- {list} указывает на список <Объект> , то следующие

<c:forEach items="${list}" var="item">
    ${item}<br>
</c:forEach>

в основном так же, как и в следующем «Нормальный Java»:

for (Object item : list) {
    System.out.println(item);
}

Если у вас есть список > вместо этого, то следующее

<c:forEach items="${list}" var="map">
    <c:forEach items="${map}" var="entry">
        ${entry.key}<br>
        ${entry.value}<br>
    </c:forEach>
</c:forEach>

имеет в основном так же, как и в «нормальном Java»:

for (Map<K, V> map : list) {
    for (Entry<K, V> entry : map.entrySet()) {
        System.out.println(entry.getKey());
        System.out.println(entry.getValue());
    }
}

Клавиша и значение - здесь не специальные методы или около того. Они на самом деле методы Getter из объекта MAP.entry (щелкните на синем CAP.entry , чтобы увидеть API DOC). В EL (язык выражения) вы можете использовать . Оператор DOT для доступа к методам Getter с использованием «Имя свойства» (имя метода Getter без префикса Get ), все только в соответствии с спецификацией Javabean.

Это сказано, вам действительно нужно убирать «ответы» в вашей предыдущей теме, поскольку они добавляют шум на вопрос. Также прочитайте комментарии, которые я разместил в ваших «ответах».

113
ответ дан 7 November 2019 в 10:44
поделиться
Другие вопросы по тегам:

Похожие вопросы: