본문 바로가기
programming/web

[jsp]EL(Expression Language)

by 힐무새 2017. 5. 19.

목표

el이 jsp에서 활용하는 이유와 방법

요청값을 처리할 때 효과적인 el을 활용하여 프로그래밍 할 수 있다

el을 통한 산술 및 논리 연산 처리를 할 수 있다

el이 제공하는 기본 객체의 기능별 구별을 할 수 있다

jstl의 개념과 기본적인 활용 방법을 안다.

jstl에서 page scope[page, request, session, application]별로 data를 jsp단에서 저장할 수 있고, 활용할 수 있다.

jstl을 통해서 반복문, 조건문을 처리할 수 있다.

jstl에 사용되는 날짜, 숫자에 대한 format형식을 효과적으로 처리할 수 있다.


생각해 봅시다

jsp에서 사용한 스크립트릿<% %>, 익스프레션 <%= %> 가독성과 사용에 어려움이 있지 않는지??

el이나 jstl을 활용하면서 변수를 지정하는데 어떤 범위에 대한 처리를 할 수 있을까??

session값이나 요청값에 대한 type casting, null은 el에서 해결해 줄 수 있는가?



EL(Expression Language)

el 표현언어는 JSTL(Jsp Standard Tag Library) 1.0 규약에 소개된 내용으로 jsp 2.0 버전부터 표현 언어로 포함된 언어이며, 새로운 스크립트 언어로 jsp의 기본 문법을 보완하고 있습니다.
  • 기능
    • jsp의 네가지 기본 객체가 제공하는 영역 속성을 사용
    • 집합 객체에 대한 접근 방법을 제공
    • 수치 연산, 관계 연산, 논리 연산자를 제공
    • 자바 클래스 메서드 호출 기능을 제공합니다
    • 표현 언어의 기본 객체를 제공합니다
  • 기본 문법
    • ${표현식}
      ex) 
  • 비교연산자 처리
    ${값1 == 값2} ==> ${값1 eq 값2}
    ${값1 != 값2} ==> ${값1 ne 값2}
    ${값1 < 값2} ==> ${값1 lt 값2}
    ${값1 > 값2} ==> ${값1 gt 값2}
    ${값1 >= 값2} ==> ${값1 le 값2}
    ${값1 <= 값2} ==> ${값1 ge 값2}

  • 요청값 ""(공백) null에 대한 처리..
    ${empty 값}: 공백이거나 null일 때 true
    ${not empty 값}: 공백이거나 null이 아닐 때 true
    ${ 조건1 && 조건2} ==>${조건1 and 조건2}
    ${!조건1} ==> {not 조건1}


request/session 객체를 el로 처리

  • 요청값 저장이나 세션값 저장은 해당하는 4가지 scope 범위에 대한 데이터를 el로 효과적으로 가져올 수 있습니다.
    request.setAttribute("name","홍길동");
    ==> ${name}
    Product p= new Product();
    p.setPrice(5000);
    p.setName("바나나");
    session.setAttribute("prod",p);
    ==> ${prod.price}, ${prod.name}


'programming > web' 카테고리의 다른 글

[jsp] 액션 태그, 에러 페이지  (2) 2017.05.24
[jsp]mvc pattern  (0) 2017.05.23
[jsp]JSTL  (0) 2017.05.19
[jsp]Session  (6) 2017.05.17
[jsp]multi check data, response  (0) 2017.05.15