JSP EL이란

EL(Expression Language)이란?

  • JSP 스크립트의 표현식을 대신하여 속성 값을 쉽게 출력하도록 고안된 언어
  • 출력, 반복처리를 태그 기반으로 제공
  • 기존 Expression Tag(<%=%>)를 대체

Expression Tag(<%=%>)대신

${표현식}

으로 간단하게 사용할 수 있다.

표현식에는 변수명, 속성명, 메소드 구조로 이루어져 있고,
정수형, 실수형, 문자열형, 논리형, null이 올 수 있다.

정수형 : 0 ~ 9 정수, 음수 표현을 위해 '-'을 사용한다.
실수형 : 0 ~ 9 정수, 소수점 표현을 위해 '.'을 사용합니다. (지수형도 가능)
문자열형 : "","의 문자열을 사용한다.
논리형 : true / false를 사용합니다.
null

Attribute 형식에는 ${attr}로 사용하고, attr은 자바에서는 변수 이름이고, EL에서는 Attribute의 이름으로 해석된다.
Attribute는 application > session > request > page 순으로 작은 범위에서 큰 범위로 찾게 된다.
Parameter 형식에는 ${param.a}로 사용한다.

EL로 Data를 가져오는 순서

JSPContext -> ServletRequest -> HttpSession -> ServletContext

위 순서대로 검색 후 가장 처음 발견된 객체를 가져온다.
(단, 탐색할 저장소는 직접 지정 가능하며 ${request.sum}으로 검색 시 ServletRequest 에서만 객체를 탐색한다)

EL에서 보관소를 참조할때 사용하는 이름

EL로 Data를 가져오기 위한 DTO 작성법

  • DTO 작성 시 JavaBeans 형태로 작성한다.(JavaBeans규약)

JavaBeans규약

  1. 기본 생성자가 존재해야 함.
  2. 멤버변수 접근제어자는 private로 선언되어야 한다.
  3. 멤버변수에 접근 가능한 getter와 setter 메서드가 존재하고 public으로 선언되어야 한다.

여기서, get과 set을 뺀 멤버 변수명이 프로퍼티가 된다.
따라서 getter는 반드시 있어야 한다.

프로퍼티 표현법

간단한 EL구문 사용 예(쿠키값 조회)

요약.

  • JSP 스크립트의 표현식을 대신하여 속성 값을 쉽게 출력하도록 고안된 언어
  • 기존 Expression Tag(<%=%>)를 대체.. 정도?

참고 글

https://hailey-v.tistory.com/37
https://gxnzi.tistory.com/68

좋은 웹페이지 즐겨찾기