본문 바로가기
✨ Back-end/Servlet

[Servlet] HttpServlet, GenericServlet, Servlet 각각의 정의

by 환풍 2023. 8. 8.
728x90
반응형

 

Servlet 인터페이스란?

서블릿 프로그램을 개발할 때 반드시 구현해야 하는 메소드를 선언하고 있는 인터페이스

init( ), service( ), destory( ), getServletConfig( ), getServletInfo( ) 등 5개의 메소드를 선언하는데, 이는 서블릿 프로그램 실행의 생명주기와 연관된 메소드이다.

 

GenericServlet 클래스란?

Servlet 인터페이스를 상속하여 클라이언트-서버 환경에서 서버단의 애플리케이션으로서 필요한 기능을 구현한 추상 클래스

service( ) 메소드를 제외한 모든 메소드를 재정의하여 적절한 기능으로 구현하였다. GenericServlet 클래스를 상속하면 애플리케이션의 프로토콜에 따라 메소드 재정의 구문을 적용해야한다.

 

HttpServlet 클래스란?

GenericServlet 클래스를 상속하여 service( ) 메소드를 재정의함으로써 HTTP 프로토콜에 알맞은 동작을 수행하도록 구현한 클래스

즉, HTTP 프로토콜 기반으로 브라우저로부터 요청을 전달받아 처리하도록 하는 클래스이다. service( ) 메소드에는 요청방식(GET , POST)에 따라 doGet(), doPost() 등 정해진 사양의 메소드가 호출되도록 구현되있다.

 

HttpServlet 클래스를 상속해 웹서버 기반의 서블릿 프로그램을 구현할 때 반드시 재정의 해야하는 메소드는 없으며, 어떠한 요청방식을 지원하는 서블릿인지에 따라 필요한 메소드를 재정의해서 구현한다.


이쯤에서 정의하자면

즉, 내가 개발하는 서블릿이 '나' 라면 '부모'는 HttpServlet, '할아버지'는 GenericServlet, '증조할아버지'는 Servlet이다.

728x90
반응형

댓글