게으른 완벽주의자의 개발자 도전기
servlet -> jsp에서 계산 데이터 가져오기 본문
앞에 했던 치킨 주문 데이터를 바탕으로 총 주문금액 데이터를 받고자 한다.
1. sevlet에서 계산에 사용할 데이터 보내기
extra 변수 설정할 때 주문자가 추가할게요에서 몇개를 선택할지 모르기 때문에 배열로 설정을 했다.
String[] extra = request.getParameterValues("extra");
1) 추가할게요 메뉴 선택 개수 데이터 만들기
추가할게요 메뉴(나는 extra로 지정함)를 배열로 지정했기 때문에
계산할 때 추가사항은 그 배열의 길이만큼(extra.length) 데이터를 받을 수 있다.
배열로 받은 값마다 extra*1000원을 해주어야 하기 때문이다.
request.setAttribute("추가할게요 메뉴를 부를 이름", 데이터는 extra.length 만큼);
request.setAttribute("extraCnt", extra.length);
else if문이 있다면
아래에도 똑같이 추가해준다!!
request.setAttribute("extraCnt", extra.length);
2. jsp에서 실제 금액 계산
<h2>주문서</h2><br>
${orderInfo.type }
(${orderInfo.cnt } 마리)<br>
추가사항<br> (배열로 받았기 때문에 forEach문을 활용함)
<c:forEach var="extra" items="${orderInfo.extra }">
${extra }
</c:forEach><br>
1) jsp에서 계산법
jsp 화면에 3+4를 작성하면 그냥 3+4가 나오지만,
${ 3 + 4}로 작성하면 연산값 7이 나온다.
${ 10> 5} true 값이 나온다.
${10 == 10} jsp에선 잘 사용하지 않고, ${10 eq 10}로 사용한다.
${10 != 10} jsp에서 사용하지 않고, ${10 ne 10}로 사용한다.
주문금액<br>
${치킨 마리수 * 10000 + 1000 * extra로 체크된 항목 수}
${orderInfo.cnt * 10000 + 1000 * extraCnt}<br>
요청사항<br>
${orderInfo.ask }<br>
<br>
배달 배달 <br>
주문자: ${deliveryInfo.name }<br>
연락처: ${deliveryInfo.tel }<br>
배달주소: ${deliveryInfo.addr }
'servlet jsp' 카테고리의 다른 글
학생성적정보시스템 만들기 2 (학생목록페이지, taglibs(choose, when, otherwise, if 사용하기) (0) | 2022.07.30 |
---|---|
학생성적정보시스템만들기 1(DTO, index, controller.java, 기본 페이지 만들기.jsp) (0) | 2022.07.30 |
servlet 파일 하나로 jsp 데이터 주고 받기(MVC) (0) | 2022.07.24 |
taglibs와 DTO를 활용하여 jsp에서 servlet으로 데이터 넘기고 jsp로 받기 (0) | 2022.07.24 |
jsp에서 servlet 다시 jsp로 데이터 받기(기초) (0) | 2022.07.24 |