본문 바로가기
컴퓨터과학[3-2]/J.S.P

JSP - [제13강] 표준 태그 라이브러리(1)

by boolean 2016. 7. 22.
728x90

JSP - [제13강] 표준 태그 라이브러리(1)

사용자 정의 태그, JSTL, 코어 라이브러리

JSP 용어정리

  • 태그
    태그왼쪽 괄호와 오른쪽 괄호 사이의 텍스트로 JSP 페이지의 구성 요소이다. 태그의 이름을 JSP 엔진이 알고 있어야 처리할 수 있다. 태그는 JSP 스펙에서 정의된 표준 태그일 수 있으며 또 태그 라이브러리에 존재하는 커스텀 태그일 수 있다.
  • 표준 태그
    JSP에서 정의된 태그로 별도의 선언 없이 항상 JSP 페이지에서 이용 가능한 태그이다. 태그를 사용한다는 것은 지정된 특별한 액션을 수행하라는 의미이다.
  • 커스텀 태그
    사용자가 정의한 태그로 태그 라이브러리 기술자(TLD) 파일에서 정보가 기술되어 있는 태그이다. JSP 페이지에서 taglib 지시어로 해당 TLD 파일의 위치를 명시해야 커스텀 태그를 사용할 수 있다.
  • JSTL
    JSP Standard Tag Library의 약자이다. 커스텀 태그 가운데 활용도가 높은 태그들을 표준화하여 하나로 묶은 태그 라이브러리 집합이다. JSP 페이지에서 taglib 지시어로 태그 라이브러리를 선언하면 표준 태그처럼 사용할 수 있다.

요점정리

  1. 사용자가 직접 만들어 사용하는 태그를 사용자 정의 태그 또는 커스텀 태그라고 하는데 이러한 사용자 정의 태그들 중에서 자주 사용되는 것들을 모아서 표준화 시킨 것이 바로 JSTL이다.
  2. JSTL에서 제공되는 태그는 다음과 같은 5가지로 분류된다.
    라이브러리이름 지원 기능 접두어
    코어 변수
    흐름제어
    URL처리
    c
    XML XML 관련 처리 x
    국제화

    메시지 형식
    숫자 및 날짜 형식

    fmt
    데이터베이스 SQL sql
    함수 컬렉션 처리
    String 처리
    fn
  3. 코어 라이브러리는 자바의 기본 문법이나 변수 지정 등과 같은 코드를 지원하기위해 제공되는 태그들이다.
  4. URL 처리와 관련된 태그에는 <c:import>, <c:url>, <c:redirect> 태그 등이 있다.
  5. JSTL은 표현 언어 수식에서 사용할 수 있는 함수를 제공한다.

연습문제

  • 연습문제1
    JSTL에 관한 설명으로 잘못된 것은?
    답을 체크하세요
    정답 :
    해설 :
    <jsp:include ... >와 같이 접두어가 jsp인 태그는 JSP의 표준 태그이다. JSTL에서 제공되는 커스텀 태그의 접두어는 taglib 지시어에 나타난다. 
  • 연습문제2
    <c:forEach> 태그를 다음과 같이 사용하였다. 이것에 대한 설명으로 잘못된 것은?
    <c:forEach var=“m” items=“${map}”> ... </c:forEach>
    답을 체크하세요
    정답 :
    해설 :
    <c:forEach> 태그에는 delims 속성을 사용할 수 없다. <c:forEach> 태그의 items 속성에 문자열이 주어지면 컴마(,)로 원소들을 구분하여 처리한다.
  • 연습문제3
    아래 코드에서 prop은 Map 유형의 객체이다. 밑줄 부분에 나와야하는 것은 무엇인가?
    <c:set var="prop" value="<%=prop%>" />
    <c:set target=            property="host" value="localhost" />
    답을 체크하세요
    정답 :
    해설 :
    속성의 값은 항상 따옴표로 묶어야 한다. 또 target의 속성 값으로 객체의 레퍼런스가 주어져야 한다. 따라서 보기 4가 정답이다. 표현 언어 수식을 사용한다면 “${prop}”도 답이 될 수 있다.
  • 연습문제4
    정확하게 taglib 지시어를 사용하였다고 가정하고, 다음 중 커스텀 태그의 사용이 잘못된 것은 무엇인가?
    답을 체크하세요
    정답 :
    해설 :
    보기 3은 접두어가 없으므로 잘못되었다.
  • 연습문제5
    다음 태그의 의미를 정확히 설명한 것은 무엇인가?
    <c:import url="http://www.daum.net" var="result"></c:import>
    답을 체크하세요
    정답 :
    해설 :
    속성 var이 없다면 보기 1이 정답이나 var이 존재하면 해당 변수에 지정된 페이지의 내용이 저장된다.


댓글