메뉴 건너뛰기

조회 수 1114 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

JSTL을 이용하여 합계를 구하는 방법이 필요할 때가 있다.

(기본적으로 <c:set>, <c:out>을 사용한다.)


개인적으로는 forEach문과 함께 사용하는 경우가 많은 것 같다.

보통 가장 우측이나 하단에 합계에 관련되어 숫자를 계산하기에 적합하다.


아래 형태는 우측에 합계를 나타낼 때 자주 사용할 수 있는 형태이다.

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

<c:set var="row_sum" value="0" />

<tr>

<td>

<c:set var="row_sum" value="${row_sum+ data.num_1}"

</td>

<td>

<c:set var="row_sum" value="${row_sum+ data.num_2}"

</td>

……

<td>

<c:set var="row_sum" value="${row_sum+ data.num_n}"

</td>

<td>

<c:out value="${row_sum}" />

</td>

</tr>

</c:forEach>


아래 형태는 하단에 합계를 나타낼 때 자주 사용할 수 있는 형태이다.

<c:set var="col_sum" value="0" />

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

<tr>

<td>

<c:set var="col_sum" value="${col_sum+ data.num_1}"

</td>

</tr>

<tr>

<td>

<c:set var="col_sum" value="${col_sum+ data.num_2}"

</td>

</tr>

……

<tr>

<td>

<c:set var="col_sum" value="${col_sum+ data.num_n}"

</td>

</tr>

</c:forEach>

<tr>

<td>

<c:out value="${col_sum}" />

</td>

</tr>


두가지 모두를 사용해서 한 테이블을 나타낼 수도 있고, 각각 필요한 걸 사용할 수도 있다.

굳이 <c:set>이 <td>안에 들어가지 않더라도 사용하는데는 문제가 없으나 기본 위치를 저렇게 생각하고 사용하면 개인적으로 편리한 것 같다.

우측 합계와 같이 변수를 따로 몇개 더하지 않아도 된다면 굳이 <c:set>을 사용하지 않고, <c:out>안에서 더하더라도 상관 없을 것 같다.


List of Articles
번호 제목 날짜 조회 수
23 Spring Security의 동작 방법 file 2018.06.21 4330
22 이클립스에서 인코딩 설정 file 2018.06.21 2382
21 전자정부 표준프레임워크 파일업로드용량설정 file 2018.12.06 1961
20 스프링프레임워크 <form:form> 태그 사용법 file 2018.12.06 1224
19 JSP에서 지시자(Directive) 또는 태그라이브러리에 의한 공백 라인을 제거하는 방법 file 2018.12.06 1338
18 전자정부프레임워크 설치 및 실행 file 2018.12.07 1533
17 이클립스(Eclipse) 소스 일괄 수정 file 2018.12.07 1143
16 이클립스(Eclipse) 한글 언어팩 설치. Babel 프로젝트 file 2018.12.07 1249
15 JSTL - <c:if>, <c:choose> 태그 사용법 2019.02.28 2264
14 <c:url> 태그 사용법 file 2019.02.28 4393
13 JSP에서 지시자(Directive) 또는 태그라이브러리에 의한 공백 라인을 제거하는 방법 file 2019.02.28 860
12 스프링프레임워크 <form:form> 태그 사용법 file 2019.02.28 3567
11 @SessionAttributes와 SessionStatus 사용하기(세션에 모델 객체 저장) file 2019.02.28 1234
10 전자정부표준프레임워크 파일 업로드 크기 설정(feat. MaxUploadSizeExceededException) file 2019.02.28 1155
9 [JSTL core] [c:forEach] varStatus를 활용한 변수 2019.03.05 1097
8 forEach문은 아래와 같이 활용한다. 2019.03.05 969
» JSTL을 이용하여 합계 구하기 2019.03.05 1114
6 JSTL 숫자 포맷 맞추기 (<fmt:formatNumber> 사용 예제) 2019.03.05 1224
5 JAVA에서 alert창 띄우기 2019.03.05 1642
4 form에서 enctype="multipart/form-data"로 보낸 데이터를 request로 받기 2019.03.05 1019
Board Pagination Prev 1 2 3 Next
/ 3

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved