EL 언어와 JSTL

김태형·2023년 12월 6일
0

JSP

목록 보기
9/10

1. EL(Expression Language)

  • 값을 간결하고 간편하게 출력할 수 있도록 해주는 언어
  • <%= %>, out.println()과 같은 자바코드를 더 이상 사용하지 않고
    좀 더 간편하게 출력을 지원하기 위한 도구.
  • 배열이나 컬렉션에도 사용되고, javaBean의 프로퍼티에서도
    사용된다.

1-1. EL구문

  • ${..} 내에 표현식으로 표현합니다.
  • ${true}
  • ${false}
  • ${123}
  • ${"java"}

1-2. 범위

  • EL식에서는 Attribute의 이름으로 해석이 된다. 값을 찾을때
    Attribute는 작은 Scope에서 큰 Scope으로 찾는다
  • page > request > session > application
  • 만약 특정한 객체 값을 가져올려면 scope의 범위를 지정해서 호출
    -> page scope : 하나의 JSP페이지에서만 사용할 수 있는
    영역
    -> request scope : 하나의 요청에서만 사용할 수 있는 영역
    -> session scope : 하나의 웹 브라우저에서 사용할 수 있는
    영역
    ->application scope : 웹 어플리케이션 영역

1-3. EL연산자

  • 산술연산자 : +, -, *, /(div), %(mode)
  • 논리연산자 : &&(and), ||(or), !(not)
  • 비교연산자 : ==(eq), !=(ne), <(lt), >(gt), <=(le), >=(ge)
  • empty 연산자 : 값이 null이거나 공백문자인지를 판단하는 연산자
    ${empty "" } -> true
    ${empty null} -> true
    ${empty data} -> data에 값이 없으면 true
  • 조건연산자 : a?b:c
    a조건이 만족하면 b를 리턴, 만족하지 않으면 c를 리턴

2. JSTL

  • JSP Standard Tab Library
  • 연산이나 조건문, 반복문을 편하게 처리할 수 있으며, JSP페이지
    내에서 자바코드를 사용하지 않고도 로직을 구현할 수 있도록
    효율적인 방법을 제공한다.
  • for(초기식;조건식;증감식){} -> <c:forEach>...</c:forEach>

2-1. JSTL core 태그

  • < c:set />
    : 변수를 만들때 사용
  • <c:out> </c:out>
    : 값을 출력(EL문을 좀 더 많이 쓴다)
  • <c:choose> </c:choose>
    : 조건제어(switch문), 내부에 c:when, c:otherwise만 있어야한다.
  • <c:when> </c:when>
    : 조건제어(case문)
  • <c:otherwise> </c:otherwise>
    : 조건제어(default)
  • <c:forEach> </c:forEach>
    : 반복제어(for)

2-2. jstl function

0개의 댓글