JSTL과 EL : CORE 라이브러리(if, forEach, forTokens, choose)
<c:if test=”${조건문}”>
- 기본형태
1
2
3
4//기본형태
<c:if test="${조건문}">
실행문장
</c:if>
- 파라미터 데이터형태의 차이
- jstl의 param.변수명 : 있는 그대로의 타입을 가지고온다. 숫자면 숫자, 문자열이면 문자열 -> 사칙연산가능
- 반면 js의 request.getParameter(“변수명”)는 무조건 문자열이다. -> 사칙연산불가
순서
core 라이브러리연결
1
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
변수값을 출력하고싶으면 EL태그사용
- 그냥 i찍으면 변수명이 출력됨.
- 변수값을 출력하고싶으면 EL태그사용
1
2
3
4
5
6
7
8
9//기본값
<c:out value="${변수명}" />
//예시
<c:out value="i" />
<c:out value="${i}" />
//출력값
i
변수명
if else는 없다 if만 있음
1
2
3
4//기본형태
<c:if test="${i=='itwill' }">
아이티윌 입니다.
</c:if>
1 | <!-- 1.core 라이브러리연결 --> |
<c:forEach begin=”” end=”” step=”” var=””>와 <c:forTokens items=”” delims=”” var=””>
- 자주 사용함.
- 필수 속성: items=”” delims=”” var=””
- jsp표현식은 사용할 수 없다 WHY? jstl실행전에 java가 먼저 실행되는데 jstl의 변수가 먼저 생성되지 않았기때문에 java는 변수를 몰라서 에러가 남.
1 | //기본값 |
- 사용법
1 | <% |
<c:choose><c:when test=”${조건식}”><c:otherwise>
- choose태그를 사용하여 switch case구문을 나타낼수있다.
1 | <c:set var="num1" value="0" /> |