EL
2022. 1. 4. 15:42ㆍWeb
반응형
EL(Expression Language)
기존에 사용했던 표현식(출력식) <%= name(변수 또는 메소드) %>와 같이
JSP상에서 표현하려는 값을 ${ name }의 형식으로 표현해서 작성하는 것
EL을 이용해서 getXXX을 통해 값을 빼낼 필요 없이
EL구문 내에 키값만 제시하면 바로 접근 가능
기본적으로 EL은 JSP내장객체를 구분하지 않고
자동으로 모든 내장객체에 키값을 검색해서 존재하는 경우 화면에 값 출력
* 수강생 정보
<ul>
<li>이름: ${ student.name }</li>
<li>나이: ${ student.age }</li>
<li>성별: ${ student.gender }</li>
// 만약 모든 영역에서 검색이 안 될 경우 == 오류 없이 아무것도 출력X
</ul>
pageScope에 담긴 값 출력: ${ scope } <!-- 범위가 제일 작은 것부터 실행하기 때문 -->
또는 ${ pageScope.scope }
requestScope에 담긴 값 출력: ${ requestScope.scope }
sessionScope에 담긴 값 출력: ${ sessionScope.scope }
applicationScope에 담긴 값 출력: ${ applicationScope.scope }
* 산술 연산
10 + 3 = ${ big + small }
10 - 3 = ${ big - small }
10 x 3 = ${ big * small }
10 / 3 = ${ big / small } 또는 ${ big div small }
10 % 3 = ${ big % small } 또는 ${ big mod small }
* 대소 비교 연산
10 > 3 = ${ big > small } 또는 ${ big gt small }
10 < 3 = ${ big < small } 또는 ${ big lt small }
10 >= 3 = ${ big >= small } 또는 ${ big ge small }
10 <= 3 = ${ big <= small } 또는 ${ big le small }
* 동등 비교 연산
<!-- el에서의 == 비교는 자바에서의 equals()와 같은 동작 -->
sOne과 sTwo에 담긴 값이 일치하나여? ${ sOne == sTwo } 또는 ${ sOne eq sTwo }
sOne과 sTwo에 담긴 값이 일치하지 않나여? ${ sOne != sTwo } 또는 ${ sOne ne sTwo }
big에 담긴 값이 10과 일치하나여? ${ big == 10 } 또는 ${ big eq 10 }
sOne에 담긴값이 "하이"와 일치하나여? ${ sOne == '하이' } 또는 ${ sOne eq "하이" }
<!-- el안에서 문자열 리터럴 제시 시 홑따옴표, 쌍따옴표 가리지 않음 -->
* 객체가 null인지 또는 리스트가 비어있는지를 비교
pTwo가 null? ${ pTwo == null } 또는 ${ empty pTwo }
pOne이 null? ${ pOne == null } 또는 ${ empty pOne }
pOne이 null이 아니여? ${ pOne != null } 또는 ${ !empty pOne } 또는 ${ not empty pOne }
lOne이 텅 비어있는겨? ${ empty lOne }
lTwo는? ${ empty lTwo }
* 논리연산자
${ true && true } 또는 ${ true and true }
${ true || false } 또는 ${ true or false }
반응형
'Web' 카테고리의 다른 글
content directory WebContent과 webapp 차이 (0) | 2022.01.04 |
---|---|
JDBC (0) | 2021.10.19 |