Java 관련/JSTL, EL
[JSTL] JSTL에서 break문 구현하기
Wings of Freedom
2021. 4. 5. 23:36
JSTL에서는 java와 같이 break문이 없다.
그리고 변수에 java 키워드를 입력하면 오류가 발생한다.
[Java Web/JSTL, EL] - [JSTL] javax.el.ELException: Failed to parse the expression라는 JSTL 오류
그럼 JSTL forEach문에서 break처리하는 방법에 대해 보도록하겠다.
아래와 같이 done_loop 변수를 선언한 후 if문에 넣어 놓는다.
이후 if문으로 done_loop 변수가 false에서 true로 set되면 loop가 종료된다.
<%--break이라는 변수를 하나 선언해준다. default는 false--%>
<c:set var="done_loop" value="false"/>
<c:set var="i" value="1"></c:set>
<c:forEach begin="1" end="${boardPage.totalPage}" step="1">
<%-- 루프가 돌면서 break 문 체크--%>
<c:if test="${done_loop ne true}">
<a href="/getListBoard.do?currentPageNo=${i}">[${i}]</a>
<c:set var="i" value="${i+1}"></c:set>
<%--만약 i==1가 되면 break 변수가 true로 set되면서 forEach문이 탈출된다.--%>
<c:if test="${i eq 11}">
▶다음
<c:set var="done_loop" value="true"/>
</c:if>
</c:if>
</c:forEach>
<break 전>
<break 후>