Любой из них может быть использован.Проблема only с методом c:forEach
заключается в том, что вам может необходимо установить и включить библиотеку тегов JSTL.В зависимости от вашей среды и набора навыков это может быть немного болезненно.
В приведенном выше примере используется «чистая» Java с тегами JSP.Все, что между <%
и %>
- это обычный код Java.Это встроено в язык JSP.<%=
является ярлыком для использования неявного объекта out
, который встроен в JSP (список всех переменных см. В на этой странице ).Это также может быть записано как:
<%
for (String temp : students) { %>
<tr>
<td><% out.print(temp.getFirstName()) %></td>
<td><% out.print(temp.getLastname()) %></td>
<% } %>
Но теперь предупреждение.Это хорошо, чтобы узнать это, и, в зависимости от того, что вы зарабатываете на жизнь, вы вполне можете столкнуться с JSP-кодом.Я провел консультации для людей, которые даже сегодня имеют JSP-код повсюду.Но то, что @GyroGearless делает JSP, не считается лучшей практикой для новых проектов.В конечном итоге они смешивают бизнес-логику с логикой дисплея.В большом проекте с людьми из UI и людьми из Java это может затруднить разделение работы.Библиотеки тегов JSP были созданы как попытка минимизировать это, но на самом деле это был не лучший ответ.
Новые проекты сегодня отделяют логику отображения от логики бэкенда.Вы пишете интерфейс, используя библиотеку JavaScript недели (например, AngularJS, ReactJS, Ember и т. Д.), И свой бэкэнд, используя современные технологии, такие как JAX-RS, для создания AJAX-интерфейса с интерфейсом REST / JSON для бэкенда.