JSTL (JSP Standard Tag Language)
- jsp 사용자 정의(커스텀) 태그 중 표준인 것
jstl 태그기능예제
c:set | 변수 선언 | <c:set var="name" value="value"/> |
c:out | 변수 출력 | <c:out value="${name}"/> |
c:forEach | for 반복문 | <c:forEach items="items" var="i"> <c:out value="${i.name}"/> </c:forEach> |
c:if | if 조건문 | <c:if test="${name == 'John'}"> My name is John. </c:if> |
c:choose c:when c:othterwise |
choose 조건문 while : 조건 만족 시 otherwise : 조건 불만족 시 |
<c:choose> <c:when test="조건문"> 실행 내용 </c:when> <c:otherwise> 실행 내용 </c:otherwise> </c:choose> |
c:remove | 변수 제거 | <c:remove var="name"/> |
EL (Expression Language)
- JSP 표현식 객체로 jstl에 태그 안에서 사용됨.
el 내장 객체
el 태그기능예제
pageContext | Jsp의 page와 동일한 내장 객체 | ${pageContext.name} |
pageScope | Jsp의 내장 객체 <속성,값>의 Map 객체 | ${pageScope.name} |
param | JSP의 내장 객체 요청 파라미터의 <파라미터 이름, 값>의 Map 객체 | ${param.name} |
requestScope | JSP의 내장 객체, request 객체에 저장된 <속성, 값>의 Map 객체 | ${requestScope.name} |
sessionScope | JSP의 내장 객체, session 객체에 저장된 <속성, 값>의 Map 객체 | ${sessionScope.name} |
el 연산자
연산자기능예제
. | 빈의 프로퍼티 , Map의 값에 접속 | ${param.name} |
[] | 배열이나 리스트(List)의 객체에 접근 | ${param["name"]} |
() | 괄호 | ${(1+2)*3} |
a?b:c | 조건 a가 true이면 b, false면 c | ${(5>3)? 5 : 3} |
+ | 더하기 | ${5 + 3} |
- | 빼기 | ${5 - 3} |
* | 곱하기 | ${5 * 3} |
/ | 나누기 | ${5 / 3} |
%, mod | 나머지 | ${5 mod 3} |
==, = | 같다 | ${5 = 3} |
!= | 같지 않다 | ${5 != 3} |
<, lt | 보다 작다 | ${5 lt 3} |
>, gt | 보다 크다 | ${5 gt 3} |
<=, le | 작거나 같다 | ${5 le 3} |
>=, ge | 크거나 같다 | ${5 ge 3} |
&&, and | 논리 연산자 and | <c:if test="${str1='john' && str2='mark'}"> |
||, or | 논리 연산자 or | <c:if test="${str='john' || str='mark'}"> |
!, not | true는 false로 false는 true로 반환 | <c:if test="${empty str1}"> |
empty | 빈 값 체크 | ${ns.empty} |
func(args) | 메소드 호출 | ${ns:func(args1)} |
반응형