EL(Expression Language)과 JSTL(Java Standard Tag Library) JAVA2012. 4. 26. 15:53
EL(Expression Language)
- getter의 대용
- JSP 2.0에서 새롭게 추가된 스크립트 언어
- 기존의 Script Tag의 표현식(Expression) Tag의 업그레이드된 출력태그
- 주요기능 -
- Servlet / JSP가 제공하는 4가지 영역의 속성에 저장된 객체의 속성에 쉽게 접근하여 출력
- 집합객체(배열, 컬렉션)에 대한 접근 방법제공
- 리터럴 데이터 뿐만 아니라, 다양한 연산결과를 출력
- 출력방법 -
${expression} - ${}에서 {} 사이에 표현 하고자 하는 내용을 넣는다.
- 예 시 -
- ${value1.value2.[value3...]}
- ${value1["value2"]}
- ${value1[value2["value3"]]}
- value1은 EL 내장객체나 속성명이 들어와야 한다.
- JSP의 script(scriptlet, 표현식, 선언부) 요소를 제외한 나머지 부분에서 사용된다.
- 콤마 이후는 getter method라고 생각하면 된다.
- ${board.seq}는 <%=boardVO.getSeq()%>와 동일!
JSTL(Java Standard Tag Library)
- EL에는 getter 형식의 기능만 존재함
- 제어문에서의 표현형식이 필요함 ===> JSTL
- SUN社에서 표준문서를 지정 (JCP) 이후, 각 WAS 벤더들이 구현해서 제공
- 대표적 라이브러리 : Jakarta Commons 의 태그라이브러리
- Tomcat JSTL Library 다운로드 사이트 : http://tomcat.apache.org/taglibs/standard/
(http://www.apache.org > jakarta > (좌측하단)TagLibs > (중앙상단) Apache Standard Taglib 링크 클릭 )
- 각 서블릿 버전에 알맞는 라이브러리 다운로드 가능
- API : http://java.sun.com/products/jsp/jstl/1.1/docs/tlddocs/index.html
- 위 경로에서 라이브러리를 다운받고, 압축해제하면 아래 이미지처럼 경로를 확인 할 수 있다.

- 위 두개의 파일을 원하는 프로젝트의 LIB 경로로 복사해 넣어주면 된다
- 위 경로중에서
jakarta-taglibs-standard-1.1.2\jakarta-taglibs-standard-1.1.2\doc 경로의
'GettingStarted.html' 파일을 열어보면 도움말 HTML을 확인 할 수 있다.
- 도움말 HTML 파일의 내용중에


JSTL을 사용하길 원하는 페이지의 상단에 넣어준다. (위 이미지 참조)
그리고 위 그림에서 기존의 'List<BoardVO> boardList = ... ' 부분의 코드는 불필요하므로 제거해준다.

같은 내용을 JSTL로 변경이 가능하다. 아래와 같이 말이다.
아래 그림에서의 결과중, ${board.seq} 부분의 결과는
게시물의 번호 그 자체가 출력된다는 점을 기억하자. 아래에서 수정될 것이다.

작업순서를 정리해보면 아래와같다.

- 위에서 붉은 글씨로 강조했던것처럼, 현재까지의 작업의 결과로는 게시물의 번호 그 자체가 출력된다.
하지만, 순번을 출력하고 싶을때 (for루프에서의 인덱스 번호)는 아래처럼 변수를 지정한다.

일종의 변수의 지정이라고 생각하면 되겠다.
- forEach 반복을 수행하면서 varStatus의 카운팅 결과를 출력하면, 순번이 찍히게 된다.
이것은 ${varStatus.index + 1} 과 출력결과가 동일하다.
- 나머지 조건문과 기타등등은 참고문서를 참조하자.

'JAVA' 카테고리의 다른 글
The specified JRE installation does not exist 에러 발생시 (0) | 2012.04.30 |
---|---|
EL (Expression Language) 문법 (0) | 2012.04.27 |
jstl 문법 정리 (0) | 2012.04.26 |
자바와 C# 의 예약어 비교 (0) | 2012.02.23 |
자바 설치 및 개발환경 구축 (0) | 2012.02.22 |