개발자의 끄적끄적

[java] JSTL 반복문(forEach) 사용법 정리 [펌] 본문

개발/java & jsp

[java] JSTL 반복문(forEach) 사용법 정리 [펌]

효벨 2020. 4. 13. 03:00
728x90
반응형

[java] JSTL 반복문(forEach) 사용법 정리 [펌]

 

 

반복문은 동일한 작업을 특정 횟수 만큼 반복할 때 사용한다.

 

JSTL에서는 제일 흔하게 사용하는 <c:forEach>에 대해서 알아보자.

지시문 선언

반복문을 사용하려고 하면 JSP 페이지 상단에 JSTL core 선언이 필요하다.

 

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

<c:forEach> 목록을 이용한 반복문

<c:forEach>는 목록을 입력 받아서 목록의 갯수만큼 반복하는 반복문이다.

 

속성 설명

항목

설명

필수 여부

기본값

var 사용할 변수명 필수 없음
items Collection 객체(List, Map) 필수  
begin

반복 시작 index. 정의되지 않을경우 o

   
end 반복 종료   마지막 index
step 반복할 때마다 건너뛸 index 개수    
varStatus 반복 상태를 알 수 있는 변수    

 

varStatus 값 설명

리턴

설명

index int items에 정의한 항목을 가리키는 index 번호이다. 0부터 시작한다
count int 현재 몇번째 반복인지 나타낸다. 1부터 시작한다.
first boolean 현재 반복이 첫번째인지 여부
last boolean 현재 반복이 마지막인지 여부

${status.current} 현재 for문의 해당하는 번호

${status.index} 0부터의 순서

${status.count} 1부터의 순서

${status.first} 첫 번째인지 여부

${status.last} 마지막인지 여부

${status.begin} for문의 시작 번호

${status.end} for문의 끝 번호

${status.step} for문의 증가값

 

<c:foreach> 태그 상태 속성 입니다. 속성을 이용해서 제어하면 좀더 쉽게 제어할수있습니다.

< c:foreach items=”${RESULT}” var=”RESULT” varStatus=”status”>
${status.current}<br/> <!– 현재 아이템 –>
${status.index}<br/>        <!– 0부터의 순서 –>
${status.count}<br/>        <!– 1부터의 순서 –>
${status.first}<br/>           <!– 현재 루프가 처음인지 반환 –>
${status.last}<br/>           <!– 현재 루프가 마지막인지 반환 –>
${status.begin}<br/>        <!– 시작값 –>
${status.end}<br/>         <!– 끝값 –>
${status.step}<br/>         <!– 증가값 –>
< /c:forEach>

 

 

사용 예제

 

모든 속성을 사용한 예

<c:forEach var="item" items="${items}" begin="0" end="10" step="1" varStatus="status">

     <p>번호 : ${status.index}</p>

     <p>책명 : ${item.name}</p>

     <p>저자 : ${item.author}</p>

     <p>출판사 : ${item.publisher}</p>

</c:forEach>

 

위 예시는 ${items} 0부터 10까지 반복하면서 목록을 표시한다.

 

일반적인 사용 예

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

     <p>번호 : ${status.index}</p>

     <p>책명 : ${item.name}</p>

     <p>저자 : ${item.author}</p>

     <p>출판사 : ${item.publisher}</p>

</c:forEach>

 

 

<c:forTokens> 토큰을 이용한 반복문

문자열을 특정기호로 잘라내어 반복하는 반복문이다. Java에서의 StringTokenizer에 비슷하게 동작한다.

 

속성 설명

항목 설명 필수 여부 기본값
delims 문자열을 분리하기 위한 특정 기호 필수  

 

사용 예제

<ol>

   <c:forTokens var="item" items="사과,포도,바나나,수박,딸기" delims=",">

       <li>과일 : ${item}</li>

   </c:forTokens>

</ol>

 

items에 문자열을 넣고, delims에는 분리할 기호를 넣는다.

각 토큰별로 분리된 문자열은 var로 지정된 변수로 얻어 올 수 있다.

 



출처: https://thefif19wlsvy.tistory.com/61 [FIF's 코딩팩토리]

반응형
Comments