Computer >> 컴퓨터 >  >> 프로그래밍 >> 프로그래밍

JSP의 extends(확장) 속성이란? 개념과 사용 예시 총정리

JSP에서 extends 속성은 page 지시어(page directive)의 옵션 중 하나로, JSP 파일로부터 생성되는 서블릿(servlet)이 반드시 상속해야 할 부모 클래스(superclass)를 지정하는 역할을 합니다.

기본적으로 JSP 컨테이너는 자체적인 기본 클래스를 기반으로 서블릿을 생성하지만, 이 속성을 활용하면 개발자가 원하는 특정 클래스를 부모 클래스로 직접 지정할 수 있습니다.

extends 속성 사용 예시

예를 들어, 아래와 같이 page 지시어를 작성하면 JSP 번역기(JSP translator)가 서블릿 소스 코드를 생성할 때, 해당 서블릿이 somePackage.SomeClass 클래스를 상속하도록 만듭니다.

<%@ page extends = "somePackage.SomeClass" %>

사용 시 주의사항

다만 실무 환경에서는 extends 속성을 사용하는 경우가 드뭅니다. 그 이유는 다음과 같습니다.

  • 컨테이너가 제공하는 기본 서블릿 클래스는 JSP 처리에 필요한 내부 기능에 최적화되어 있습니다.
  • 부모 클래스를 임의로 변경하면 특정 컨테이너에서만 동작하는 비이식적(non-portable) 코드가 되어 이식성이 떨어질 수 있습니다.
  • 잘못된 클래스를 지정하면 컴파일 오류나 런타임 문제가 발생할 수 있습니다.

따라서 특별한 요구 사항이 없다면 extends 속성은 사용하지 않는 것이 안전하며, 대부분의 경우 기본 설정 그대로 두는 것이 권장됩니다.