JSTL (JSP Tag Library) 는 일반적으로 사용하는 JSP 태그들을 표준화 시킨것이다. 여기에는 아래와 같은 것들이 많이 사용된다.
CORE | http://java.sun.com/jstl/core | :: c |
XML | http://java.sun.com/jstl/xml | :: x |
I18N | http://java.sun.com/jstl/fmt | :: fmt |
SQL | http://java.sun.com/jstl/sql | :: sql |
이러한 tablib 를 jsp page 에서 사용하려면 다음과 같이 넣어주면 된다. 아래의 경우는 예를 들어 core 부분을 사용하기 위하여 넣어 준 경우이다.
예) <%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %>
이와 같이 JSP 페이지에 선언하여 사용하기 위해서 JSTL 관련 라이브러리와 tld 파일을 설치 해 주어야 동작하게 된다. 이과정을 JSTL 설치 과정이라 생각하면 될 듯 하다.
JSTL 설치는 그렇게 어렵지 않다. 어떠한 경우 아파치나 톰켓을 설치하는 패키지등이 설치해주는 경우도 있겠지만, 그런경우라 하더라도 다음과 같이 준비해주면 설치가 되었는지 알 수도 있을 것 같다.
1. 다운로드
일단 JSTL 을 다운 받을 수 있는 곳은 몇군데 있지만 http://apache.org 에서 받는것을 권장한다. 그 이유는 여기서는 JSTL 만 독자적으로 받아 설치 할 수 있기 때문이다.
http://jakarta.apache.org/site/downloads/downloads_taglibs.html 여기에 가면 중간쯤에 Standard 1.1 Taglib 가 있을 것이다.
바로 받기:
Binaries
- 1.1.2.tar.gz
- [pgp]
- 1.1.2.zip << 윈도우즈일경우 이걸 받자...
- [pgp]
Source
2. 설치하기
아파치 톰켓이 설치된 폴더에 가면 WEB-INF 라는 폴더가 있을 것이다.
- WEB-INF/lib 디렉토리에 jstl.jar 와 standard.jar 파일을 넣는다.
- WEB-INF/tld 디렉토리에 tld 폴더의 내용을 복사한다.
설치는 다 끝난 것이다. 궂이 윈도우서버나 아파치를 다시 실행 할 필요는 없다.
3. 설정하기
이렇게 설치된 JSTL 을 사용하기 위해서 우리는 WEB 서버 설정에 넣어 주어야 한다. 넣어주는 것은 URI 에 대한 실제 파일(앞에서 설치/복사한 파일) 을 연결해 준다고 생각하면 된다.
가령 STL 을 사용하기 위하여 우리는 앞의 예에서
<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %>
라 고 web page 소스 위에 넣어 주어야만 한다. 이는 java.sun.com 에 있는 사이트를 연결하라는 것이 아니라 uri 에 들어 있는 것을 하나의 키로 생각하여 라이브러리 경로를 찾아 주는 것이라 생각하면 된다. 그러므로 다음과 같은 내용을 WEB.XML 에 넣어 주도록 한다.
<taglib>
<taglib-uri>http://java.sun.com/jstl/core</taglib-uri>
<taglib-location>/WEB-INF/tld/c.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>http://java.sun.com/jstl/xml</taglib-uri>
<taglib-location>/WEB-INF/tld/x.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>http://java.sun.com/jstl/fmt</taglib-uri>
<taglib-location>/WEB-INF/tld/fmt.tld</taglib-location>
</taglib>
WEB.XML 은 WEB-INF 폴더에 있다.
4. JSP 선언
앞서 말했듯이 JSTL 을 사용하기 위하여 JSP 페이지에 다음과 같이 선언해주어야 한다.
<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %>
5. 설치 확인
설치 확인은 뭐,,, 정해진 것은 없고 , 앞의 선언을 해주고 페이지 한번 돌려 보면 되지 않을까??? 한다.