관리 메뉴

JIHYUN JEONG

[JSP/Servlet] EL(Expression Language) 본문

Information Technology/JSP,Servlet

[JSP/Servlet] EL(Expression Language)

StopHyun 2013. 3. 13. 09:42

□ 표현언어의 개요 – 표현언어의 특징

- Expression Language

- JSP 2.0 스펙에 추가

○ EL의 목적

- 빈즈, 맵, 리스트, 배열 유형의 객체의 속성이나 원소를 접근하여 화면에 출력 할수 있도록 하는 기능을 제공

(객체 자체를 전달).

○ 스크립팅 코드를 대신할 수 있음

 

□ 표현언어의 개요 – 표현언어의 Sytax

- Sytax : ${ 표현식 }

${firstThing.secondThing}

★★★★★ 중요 ★★★★★

- EL 내장객체 또는 속성

* EL내장객체 (11개) : pageScope, requestScope, sessionScope, applicationScope, param, paramValues,, header, headerValues, cookies, initParam, pageContext(빈즈를 볼수 있는 객체)

* 속성(4개), 순서기준 : 1) page, 2) request, 3) session, 4) application

※ page : page context 안에 태그핸들러는 자기(tag)를 호출했던 pageContext를 통해

페이지에서 조각이 될 수 있는 다른 태그와

※ 태그기반으로 쓸수 있도록 만들어 놓은 것

※ page context : page, request, session, application 조회기능 가능

※ scope는 setAttribute(속성값)을 모아놓은 map

 

Ex 1.

${param, name} (param은 map)

HashMap<String, String> param = new HashMap<String, String();

Param.put("id",request.setParameter("id");

 

Ex 2. 쿠키의 값얻기 (get value)

${cookie, user.value } (param은 map)

HashMap<String, Cookie> param = new HashMap<String, Cookie>();

쿠키는 String 값이 아닌 Cookie 객체를 가지고 있다. 하나의 쿠키 객체는 name과 value로 구성되어 있다.

 

Ex 3.

${user.email} -> null 이면 참조를 하지 않음

 

※ map.key

beans.속성(멤버변수의 이름)

 

※ EL 속성으로 쓸려면 setAttribute를 해야만 사용할 수 있다.

 

※ 커스톰태그 개발 방식

1. 태그를 prefix

2. 태그를 사용

 

□ 표현언어의 개요 - null처리

○ EL은 null값에 대한 특별한 처리르 해줌으로써 null에 대한 체크가 필요 없음

○ null값을 연산에 따라 0, false, ""(빈 문자열)로 처리해줌

- 산술연산에서는 null을 0 으로 취급함

 

□ 표현언어의 연산자 – 기본 연산자

 

□ 표현언어의 연산자 – 브래킷([]) 연산자 (1/3)

○ [] 연산자 왼편에는 map, beans, array, list 변수 가 올 수 있음

○ [] 연산자 안에는 key값(map), 속성명(beans) index(list, array)

※ [] 는 배열, 리스트만 사용하길 권장

 

※ 모든 EL은 내장객체 아니면 속성으로 구분한다 (중요함)

 

 






'Information Technology > JSP,Servlet ' 카테고리의 다른 글

JSP/Servlet 3,4,5일차  (0) 2013.03.08
JSP/Servlet 2일차  (0) 2013.03.05
Servlet/JSP 1일차 수업  (0) 2013.03.04
Comments