JSP의 표현식을 조금 더 효율적으로 간단히 작성할 수 있도록 고안된 표현 언어
화면에 출력하고자 하는 자바 코드를
${ key } 형식식으로 작성하면
해당 위치에 value가 출력됨.
(추가적인 작성법도 존재)
** EL의 특징 **
1. get이라는 단어를 사용하지 않는다.
왜? EL == 화면에 표현하는 언어
== 출력용 언어(setting 불가능)
== set을 못하니깐 get도 생략(but 무조건 get 수행)
2. EL은 null을 빈 칸으로 처리한다.
\${ null인 변수 } -> 빈 칸 출력
\${ NullPointerException 발생코드 } -> 예외발생 안하고 빈 칸으로 출력
${ param.name속성값 }
+ 데이터 파싱(String -> int)도 자동으로 된다.
${ 세팅한 key 값 }
1) request에 추가 세팅된 값을 얻어올 때
별도의 다운 캐스팅 필요 없다
2) import 구문도 생략
3) 객체에 저장된 값을 얻어올 때, getter를 호출하는데,
get필드명() 했지만, 그냥 필드명만 작성하면 된다.
empty : 비어있거나 , null 인지를 검사하는 연산자
${ 값 == null } / \${ 값 eq null } 인지 검사하는 방법
${ 값 != null } / \${ 값 ne null } : null이 아닌지 검사하는 방법
list2 == null : ${ list2 == null }
list2 eq null : ${ list2 eq null }
list2 != null : ${ list2 != null }
list2 ne null : ${ list2 ne null }
empty list2 : ${ empty list2 }
--> empty가 null도 비어있다고 판단함.
* list3 : null 은 아니지만 비어있다.
list3 eq null : ${ list3 eq null }
empty list3 : ${ empty list3 }
list3에 요소가 추가되어 있는가 ? : ${ !empty list3 }
list3에 요소가 추가되어 있는가 ? : ${ not empty list3 }
* list4 : null도 아니고, 요소도 1개 추가되어있음
list4 eq null : ${ list4 eq null }
empty list4 : ${ empty list4 }
list4에 요소가 추가되어 있는가 ? : ${ !empty list4 }
list4에 요소가 추가되어 있는가 ? : ${ not empty list4 }
list4의 0번째 인덱스에 존재하는 값 : ${ list4[0] }
--> EL은 List에 존재하는 요소를 얻어올 때
배열처럼 [index번호]를 입력해서 얻어온다.