JSP에서 Enumeration 개념

JSP에서 Enumeration 개념 정리

1. Enumeration이란?

  • Enumeration은 컬렉션(여러 데이터)에서 값을 하나씩 꺼내올 수 있게 해주는 객체다.
  • 예전부터 자바에서 많이 쓰였고, 주로 while(enumeration.hasMoreElements())enumeration.nextElement() 형태로 반복문을 돌린다.
  • Iterator와 비슷하지만, Enumeration은 좀 더 오래된 방식이다.

2. JSP에서 Enumeration이 쓰이는 대표적인 경우

JSP에서 Enumeration 객체는 아래와 같은 곳에서 주로 사용된다.

메서드 설명
request.getParameterNames() 클라이언트가 보낸 파라미터 이름 모두 가져오기
request.getHeaderNames() 요청의 모든 헤더 이름 가져오기
request.getAttributeNames() request에 저장된 속성 이름 모두 가져오기
session.getAttributeNames() session에 저장된 속성 이름 모두 가져오기
application.getAttributeNames() application(서블릿 컨텍스트)에 저장된 속성 이름 모두 가져오기

3. 사용 예시 (코드)

<%
    java.util.Enumeration names = request.getParameterNames();
    while(names.hasMoreElements()){
        String name = (String)names.nextElement();
        out.println(name + "<br>");
    }
%>
  • 위 코드는 파라미터 이름을 하나씩 꺼내어 출력하는 예시다.
  • request, session, application 등에서도 사용법이 동일하다.

4. 순서와 관련된 주의점

  • Enumeration을 통해 꺼내는 값들의 순서는 보장되지 않는다.
    • 즉, 어떤 값이 먼저 나오고 어떤 값이 나중에 나올지는 정해져 있지 않다.
    • 상황에 따라 다르게 나올 수 있으므로, 순서에 의존하는 코드는 작성하면 안 된다.
  • Enumeration은 "값이 하나도 없을 때까지" 순서대로 반복하며 모든 값을 꺼낼 수 있게 도와준다.

5. 정리

  • Enumeration은 여러 값(파라미터, 속성, 헤더 등)을 반복해서 하나씩 꺼낼 때 사용하는 자바 객체다.
  • JSP에서 request, session, application 객체의 attribute나 파라미터, 헤더 이름을 반복할 때 주로 사용한다.
  • 값을 꺼내는 순서는 보장되지 않으므로, 오직 "모든 값을 하나씩 꺼낸다"는 용도로만 사용한다.

'JSP' 카테고리의 다른 글

Forward와 Redirect 방식 비교  (0) 2025.05.23
HTML → Servlet → JSP  (0) 2025.05.23
147p 도서목록 표시하기 DAO DTO  (0) 2025.05.22
JSP 주요 문법 기호 정리  (0) 2025.05.21
02. 챕터 만들기  (0) 2025.05.21