-
EL(Expression Language)란?백엔드/서블릿&JSP 2021. 1. 14. 16:51
EL이란?
EL이란 Expression Language의 약자로서 JSP에서 자바코드를 더욱 간결하게 하기 위해 만들었다.
어떻게보면 완벽하게 자바 코드를 JSP에서 걷어내고 EL을 통해 가독성을 높이고자 한 것이다.
다른 JSP 파일로 입력한 숫자값을 전달하는 form을 가진 JSP 파일이 있다고 가정해보자.
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</title> </head> <body> <form action="NewFile4.jsp" method="get"> <input type="text" name="num"> <input type="submit"> </form> </body> </html>
일반 JSP 파일에서는 위와 같은 form을 통해 전달된 파라미터 num을 받기 위해
아래와 같이 자바 코드를 삽입한다.
하지만 EL을 사용하면 아래와 같이 간략하게 표현이 가능하다.
파라미터로 넘어오는 값 중 이름이 num인 값을 출력하겠다는 의미다. 결과물도 당연히 같다.
EL의 기본 표현법
EL을 사용하기 위해서는 아래와 같이 $ 기호 뒤에 중괄호 { }를 붙이고 그 안에 표현식을 넣으면 된다.
- ${ 표현식 }
${'EL입니다'} => "EL입니다" 출력 ${ 5*2 } => 10 출력
EL은 단순히 전받은 값만 나타내는 것이 아니라 중괄호 안에서 위의 코드처럼 연산도 가능하다.
그리고 EL을 통해 나타낼 수 있는 자료형태는 아래와 같다.
입력값
형태
출력값
${5}
정수
5
${4/3}
실수
1.3333333333333333.....
${'문자열'}
문자열
(작은따옴표써야 함)
"문자열"
${param.num > 5}
boolean
만약 이름이 'num'이 파라미터 값 5보다 크면 true,
아니면 false
${ null }
null
공백인 문자열
EL에서 사용 가능한 연산자
일부 연산자는 영어 알파벳으로 된 연산자를 추가적으로 지원하는데
이는 HTML 태그나 JSP 내 자바코드들을 쓸 때 사용하는 %, <> 등의 기호와 구분하기 위해 쓴다.
종류
연산자
설명
산술 연산자
+
더하기
-
빼기
*
곱하기
/ 또는 div
나누기
% 또는 mod
나머지
비교 연산자
== 또는 eq
같음
!= 또는 ne
다름
> 또는 gt
왼쪽이 큼
< 또는 lt
오른쪽이 큼
>= 또는 ge
왼쪽이 크거나 같음
<= 또는 le
오른쪽이 크거나 같음
논리연산자
&& 또는 and
and
|| 또는 or
or
! 또는 not
not
empty
empty
표현식 안의 값이 비어있을 경우 true 반환
not empty
표현식 안의 값이 비어있지 않으면 false 반환
'백엔드 > 서블릿&JSP' 카테고리의 다른 글
JSTL(JSP Standard Tag Library) (0) 2021.01.15 EL(Expression Language)과 객체 사용 (0) 2021.01.14 MVC 패턴의 등장 (0) 2021.01.14 JSP 데이터 저장소 (0) 2021.01.14 JSP의 내장객체, 암시적 객체(implicit object) - application, pageContext, page (0) 2021.01.14