EL_JSTL

JIN·2023년 4월 1일
0

삽히

목록 보기
4/6

1. EL

EL (Expression Language)

  • EL은 표현을 위한 언어
  • JSP 스크립트의 표현식을 대신하여 속성 값을 쉽게 출력하도록 고안된 language
  • 즉 표현식(<%=%>)을 대체할 수 있음
  • EL 표현식에서 도트 연산자 왼쪽은 반드시 java.util.Map 객체 또는 Java Bean 객체여야 함
  • EL 표현식에서 도트 연산자 오른쪽은 반드시 맵의 키이거나 Bean 프로퍼티여야 함

  • EL에서 제공하는 기능
    • JSP의 네가지 기본 객체가 제공하는 영역의 속성 사용
    • 자바 클래스 메소드 호출 가능
    • 표현 언어만의 기본 객체 제공
    • 수치, 관계, 논리 연산 제공

EL 문법

EL 문법 : [] 연산자

  • EL에는 Dot표기법 외에 [] 연산자를 사용하여 객체의 값에 접근할 수 있다.
  • []연산자 안의 값이 문자열인 경우, 이것은 맵의 키가 될 수도 있고, Bean프로퍼티나 리스트 및 배열의 인덱스가 될 수 있다.
  • 배열과 리스트인 경우, 문자로 된 인덱스 값은 숫자로 변경하여 처리함

EL 내장객체


EL 내장객체는 JSP페이지의 EL 표현식에서 사용할 수 있는 객체

EL 사용

  • pageContext를 제외한 모든 EL 내장 객체는 Map이다.
  • 그러므로 key와 value의 쌍으로 값을 저장하고 있다.
  • 기본문법 : ${expr}

EL에서 객체 접근

  • request.setAttribute("userInfo", "김철수");
    1. ${requestScope.userInfo}
    1. ${pageContext.request.userInfo}, ${userInfo}
  • url?name=홍길동&fruit=사과&fruit=바나나
    1. ${param.name}
    1. ${paramValues.fruit[0]}. ${paramValues.fruit[1]}
  • ${cookie.id.value}
    1. Cookie가 null이라면 null return
    2. null이 아니라면 id를 검사 후 null이라면 null retrun
    3. null이 아니라면 value값 검사
    - EL은 값이 null이라도 null을 출력하지 않는다. (공백)

EL Operator(연산자)


EL에서 객체 method 호출

2. JSTL

JSTL

JSTL Tag

JSTL - Core Tag

변수선언 : <c:set>


target 속성에 객체를 설정, property에 프로퍼티명 설정

예외 : <c:catch>

조건문 : <c:if><c:choose><c:when><c:otherwise>

반복문 : <C:forEach>

0개의 댓글