JSP 스크립트릿 내에서 HashMap을 통해 효과적으로 반복하여 드롭다운 목록을 채우는 방법은 무엇입니까?
에서 JSP에서 HashMap을 순회하는 것은 일반 Java 코드와 동일합니다. 다음 접근 방식을 사용할 수 있습니다.
for (Map.Entry<String, String> entry : countries.entrySet()) { String key = entry.getKey(); String value = entry.getValue(); }
그러나 JSP 스크립틀릿을 사용하는 것은 권장되지 않습니다. 대신 JSTL의
예:
<%@ taglib prefix="c" uri="jakarta.tags.core" %> <c:forEach items="${map}" var="entry"> Key = ${entry.key}, value = ${entry.value}<br> </c:forEach>
적응 드롭다운 목록을 채우는 앞서 언급한 코드:
<%@ taglib prefix="c" uri="jakarta.tags.core" %> <select name="country"> <c:forEach items="${countries}" var="country"> <option value="${country.key}">${country.value}</option> </c:forEach> </select>
${countries} 내에서 국가에 액세스할 수 있도록 하려면 해당 범위에 배치해야 합니다. 이는 다음을 통해 달성할 수 있습니다:
요청 범위(Servlet doGet 메소드):
protected void doGet(HttpServletRequest request, HttpServletResponse response) { Map<String, String> countries = MainUtils.getCountries(); request.setAttribute("countries", countries); request.getRequestDispatcher("/WEB-INF/page.jsp").forward(request, response); }
애플리케이션 전체 범위(ServletContextListener contextInitialized 방법):
public void contextInitialized(ServletContextEvent event) { Map<String, String> countries = MainUtils.getCountries(); event.getServletContext().setAttribute("countries", countries); }
위 내용은 JSP 드롭다운 목록을 채우기 위해 HashMap을 반복하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!