Home » JSP -9.커스텀 태그(TLD)

JSP -9.커스텀 태그(TLD)

9.1. TLD 파일 및 태그 핸들러

9.1.1 커스텀 태그

  • 개발자가 직접 정의할 수 있는 태그를 의미한다.
  • 일반적으로 태그가 존재하며, 각각의 기능들이 존재하지만, 그것만으로 개발자가 원하는 내용을 구현 하지 못할 때가 있다.
  • 이럴 때 커스텀 태그를 정의하여, 개발자가 원하는 대로 만들어 효율적으로 사용할 수 있는 태그이다.

9.1.2 예제

1) 커스텀 태그를 설정할 때 클래스 파일인 핸들러와 커스텀태그를 사용하는 jsp 페이지 사이에 중간다리 역할을 해주는 것이 tld 파일이다.
이 tld 파일에서 핸들러 클래스를 가리키고, tld 파일을 jsp 페이지에서 가져다 쓰는 형식이다.

[MsgTag.tld]

2) 커스텀 태그는 HTML 태그와 유사하지만, 태그의 내용이 핸들러 클래스에 의해 런타임시에 텍스트 형식의 출력값으로 대체 된다는 점이 다르다.
[MsgTagHandler.java]

  • TagSupport를 상속 받은 핸들러는 doStartTag() 와 doEndTag() 메소드를 받아 구현하였다.

3) 커스텀 태그객체를 생성하여 사용하는 jsp을 작성.

[tagLib.jsp]

전체적인 프로젝트의 형태는 아래와 같다.

그림 45. 커스텀 태그 프로젝트 구성

그림 46. 커스텀 태그 출력