ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • JSP - JSTL에서 ArrayLIst출력하기
    JSP 2025. 2. 11. 23:01
    반응형

    1. JSP 기본 설정

    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <%@ page import="java.util.*" %>
    <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
    • <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>: 페이지의 언어를 Java로 설정하고, 콘텐츠 타입과 문자 인코딩을 UTF-8로 지정합니다. 이는 JSP 페이지에서 데이터를 제대로 처리하고 표시하기 위해 필요합니다.
    • <%@ page import="java.util.*" %>: Java에서 제공하는 java.util 패키지의 클래스를 임포트합니다. 여기서는 ArrayList와 같은 자료 구조를 사용할 예정이므로 이를 임포트합니다.
    • <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>: JSTL을 사용하기 위한 설정입니다. c는 JSTL 태그의 접두어로, c를 사용하여 forEach와 같은 태그를 사용할 수 있게 됩니다.

     

    2. Java 코드 - List 객체 생성 및 속성 설정

    <%
    List<String> list = new ArrayList<String>();
    list.add("Java");
    list.add("vue");
    list.add("C");
    list.add("C++");
    list.add("Python");
    list.add("React");
    
    request.setAttribute("list", list);
    %>
    • List<String> list = new ArrayList<String>();: String 타입을 요소로 가지는 List 객체를 생성합니다. ArrayList는 Java의 컬렉션 프레임워크에서 제공하는 클래스입니다.
    • list.add("Java");, list.add("vue"); 등: list에 다양한 프로그래밍 언어나 프레임워크 이름을 추가합니다. 여기서는 Java, vue, C, C++, Python, React 등 총 6개의 문자열을 리스트에 추가하고 있습니다.
    • request.setAttribute("list", list);: 생성한 list 객체를 request 객체에 "list"라는 이름으로 속성으로 설정합니다. 이후 이 값은 JSP 페이지 내에서 JSTL을 사용하여 접근할 수 있습니다.

     

    3. JSTL 반복문 - c:forEach

    <c:forEach var="f" items="${list}">
        ${f}<br>
    </c:forEach>
    • <c:forEach var="f" items="${list}">: list 컬렉션의 각 항목을 반복하는 태그입니다.
      • var="f": 반복문 내에서 각 항목을 담을 변수 f를 지정합니다. 이 변수는 반복문이 실행될 때마다 list의 각 요소를 하나씩 저장합니다.
      • items="${list}": 반복할 대상을 지정합니다. 여기서는 list 속성에서 값을 가져와서 반복문을 실행합니다.
    • ${f}: 반복문 내에서 f 변수는 list의 각 항목(프로그래밍 언어나 프레임워크)을 저장하며, 이를 ${f}로 출력합니다.
    • <br>: 각 항목을 출력한 후 줄바꿈을 추가하여 각 항목이 새 줄에 출력되도록 합니다.

     

    4. 전체 코드 실행 흐름

    • Java 코드에서는 ArrayList를 생성하고, 몇 가지 값을 추가한 후 이를 request 객체에 속성으로 저장합니다.
    • JSTL의 <c:forEach> 태그는 request 객체에서 "list" 속성으로 전달된 list 컬렉션을 반복하면서, 각 요소를 <br> 태그와 함께 출력합니다.

     

    5. 출력 결과

    페이지가 로드되면 아래와 같은 결과가 출력됩니다:

    Java
    vue
    C
    C++
    Python
    React

     

     

    6. JSTL c:forEach 사용법

    • var: 반복문 내에서 각 항목을 담을 변수를 설정합니다.
    • items: 반복할 컬렉션을 지정합니다. 리스트, 배열, 맵 등 다양한 데이터를 반복할 수 있습니다.
    • ${f}: 반복문 내에서 지정한 변수의 값을 출력합니다.
    반응형

    댓글

Designed by Tistory.