290 likes | 562 Views
JSTL. JSTL 개요. Custom Tag 의 표준 많은 JSP 어플리케이션을 간단한 태그로 캡슐화 JSTL 을 사용하면 작업을 수행하는 코드들을 태그로 간략화할 수 있음 . 가독성이 좋아짐 . JSTL 은 JSP 페이지의 로직을 담당하는 부분인 if, for, while, 데이터베이스 처리 등과 관련된 표준 커스텀 태그를 제공 모든 태그는 시작태그와 종료태그가 쌍으로 이루어짐. 비교. JSTL 을 사용하기 위한 환경설정. http://jakarta.apache.org 사이트 접속
E N D
JSTL 개요 • Custom Tag의 표준 • 많은 JSP 어플리케이션을 간단한 태그로 캡슐화 • JSTL을 사용하면 작업을 수행하는 코드들을 태그로 간략화할 수 있음. • 가독성이 좋아짐. • JSTL은 JSP 페이지의 로직을 담당하는 부분인 if, for, while, 데이터베이스 처리 등과 관련된 표준 커스텀 태그를 제공 • 모든 태그는 시작태그와 종료태그가 쌍으로 이루어짐.
JSTL을 사용하기 위한 환경설정 • http://jakarta.apache.org사이트 접속 • Jakarta-taglibs-standard-1.1.2.zip 파일 다운로드 • 압축 해제 후 lib폴더에서 jstl.jar,standard.jar 복사 • 톰갯홈 \webapps\ROOT\WEB-INF\lib로 붙여넣기
JSTL core • core(코어) • 변수선언, 삭제 등 변수와 관련된 작업 및 if문, for문 등과 같은 제어문, URL 처리등에 사용 • 코어 태그 라이브러리 사용 • <%@ tablib prefix=“c” uri=http://java.sun.com/jsp/jstl/core” %> • 태그 라이브러리 정보 • Display Name : JSTL core • Version : 1.1 • Short Name : c • URI : http://java.sun.com/jsp/jstl/core
jstlEx1.jsp <c:set var=“varName” value=“${value}” /> <c:set var=“varName” value=“${value}” scope=“request” />
jstlEx3.jsp <c:forEach var=:k: begin=“1” end=“100”> <c:out value=“${k%2==0}”/> </c:forEach>
jstlEx4.jsp <c:forTokens var=“color” items=“red,yellow,black” delims=“,”> <c:out value=“${color}” /> </c:forTokens>
JSTL XML • xml을 처리하기 위한 것으로 xml출력, 흐름제어, XML변환등의 작업에 사용 • XML 태그 라이브러리 사용 • <%@ taglib prefix=“x” uri=http://java.sun.com/jsp/jstl/xml” %> • 태그 라이브러리 정보 • Display Name : JSTL xml • Version : 1.1 • Short Name : x • URI : http://java.sun.com/jsp/jstl/xml
커스텀 태그 • 사용자가 직접 자신만의 태그를 만들어 사용할 수 있는 기술 • 커스텀 태그 라이브러리 • 사용자가 정의한 커스텀 태그를 모아 놓은 것. • 이점 • 한 번 작성하면 언제든지 필요한 곳에서 재사용이 가능, 타 사용자에게 배포하여 재사용될 수 있음 • 프로그램의 가독성 향상 • JSP의 스크립트를 사용하지 않으므로 자바 문법에 거의 의존하지 않기 때문에 JSP페이지의 작성이 쉬움. • 디자이너와 프로그래머가 각자의 일을 분담할 수 있어 효율적인 작업이 가능
커스텀 태그 작성 방법 • 커스텀 태그를 정의하는 자바 파일 작성 • 자바의 클래스를 커스텀 태그로 사용하기 위해 TLD(Tag Library Descriptor)파일에 등록(정의) • JSP 페이지에서 해당 커스텀 태그를 사용할 수 있도록 하기 위해 wdb.xml에 등록 • JSP 페이지에서 해당 커스텀 태그 사용 JSP페이지에서 사용할 수 있도록 TLD 파일 등록 자바 클래스 파일을 태그로 사용할 수 있도록 등록 커스텀태그 정의 (구조, 로직) 커스텀 태그 사용 자바 클래스 파일 (.class) TLD 파일 (.tld) web.xml JSP 페이지 (.jsp) .java 파일 작성 후 컴파일
파일위치 • 자바 클래스 파일 • 웹 애플리케이션 폴더\WEB-INF\classes 폴더 내에 위치(모든 자바 클래스 파일은 이 위치에 존재해야 함) • TLD 파일 • 웹 애플리케이션 폴더\WEB-INF\tlds 폴더 내에 위치 • web.xml • 웹 애플리케이션 폴더\WEB-INF 폴더 내에 위치 • 이 파일을 수정해서 사용함. • JSP 페이지 • 웹 애플리케이션 폴더\폴더
환경설정 • Javax.servlet.jsp.tagext 패키지가 필요하며 이 패키지는 jsp-api.jar파일이 필요한데 톰캣이 기본적으로제공 • 톰캣홈\common\lib 폴더 내에 jsp-api.jar를 복사 • 자바폴더\lib에 붙여넣기 • 제어판에서 환경변수 CLASSPATH 편집 • ~\jdk1.5.07\lib\jsp-api.jar를 추가
커스텀 태그의 설명 및 작성 • 커스텀 태그 작성 • Tag, InterationTag 인터페이스를 미리 구현해놓은 TagSupport 클래스 또는 BodyTag 인터페이스를 미리 구현해놓은 BodyTagSupport 클래스를 상속받아 사용
WelcomeTag.tld 태그라이브러리에 대한 설명부분 태그라이브러리 버전 : 필수요소 태그라이브러리 이름 : 필수요소 ∙커스텀 태그당 1개씩 매핑됨. ∙ <body-content>태그는 커스텀 태그의 body가 존재하지 않을 때 empty로 입력. 필수조건
참고문헌 • JSP 2.0 웹프로그래밍, 삼양미디어, 김은옥 저 • 16장 JSTL(JSP Standard Tag Library) • 17장 커스텀 태그(Custom Tag)