본문 바로가기
프로그래밍/JSP

EL(Expression Language)이란? (+Scope, Attribute란?)

by HP_Factory 2021. 1. 30.

JSP 파일에 자바형식의 코드를 사용하면 불편한 점을 한방에 해결할 수 있는 EL(Expression Language)를 포스팅하도록 하겠습니다.

 

EL의 개념은 해석 그대로 표현 언어를 이해하고 속성 값들을 편리하게 출력하기 위해 제공된 언어 입니다.

Ex)
JSP 2.0 버전에서 새로 추가된 스크립트 언어인 EL(Expression Language)은 <%=abc%>${abc}로 간단하게 사용할 수 있게 하였습니다.

 

 

EL(Expression Language)

사용목적

<%=%>, out.println()과 같은 자바코드를 더 이상 사용하지 않고 좀 더 간편하게 출력을 지원하기 위한 도구입니다. 배열이나 컬렉션에서도 사용되고, JavaBean의 프로퍼티에서도 사용됩니다.

 

 

문법

Attribute형식에서는 '<%=cnt+1%>'를 쓰지않고 '%{cnt+1}'로 쓰고 Parameter형식에서는 '${param.abc}'으로 씁니다.

 

여기서 cnt는 자바에서는 변수 이름이고, EL 식에서는 Attribute의 이름으로 해석되는데, 값을 찾을때 Attribute는 작은 Scope에서 큰 Scope로 찾습니다.

(Page -> request -> session -> application)

 

 

여기서 Scope란?

 

Scope란?

[4가지 Scope]

  1. Application : 웹 어플리케이션이 시작되고 종료될 때까지 변수가 유지되는 경우 사용합니다.
  2. Session : 웹 브라우저 별로 변수가 관리되는 경우 사용합니다.
  3. Request : http요청을 WAS가 받아서 웹 브라우저에게 응답할 때까지 변수가 유지되는 경우 사용합니다.
  4. Page : 페이지 내에서 지역변수처럼 사용합니다.

* 영역(Scope) 객체값이라고 생각하시면 이해하시기 편하실겁니다.

- 자세한 설명은 추후 포스팅 해드리도록 하겠습니다! -

 

 

 

Attribute란?

Attribute란 메소드를 통해 저장되고 관리되는 데이터를 말합니다.

 

Attribute 예시

 

내장 객체

내장 객체

예제

paramValues, headerValues 사용법

JSTL과 EL이 같이 사용되는 예제

실제로  제가 JSTL과 EL을 같이 코딩해서 사용하는 예제입니다.

 

'프로그래밍 > JSP' 카테고리의 다른 글

JSTL(JSP Standard Tag Library)이란?  (2) 2021.01.31

댓글