본문 바로가기
IT/JSP

[JSP] - 29. 서블릿(Servlet) 이란

by 차이나는 개발자 2020. 7. 28.
728x90
반응형

#서블릿(Servlet) 이란

 

 

#서블릿이란?

- 서버 쪽에서 실행되면서 클라이언트의 요청에 따라 동적으로 서비스를 제공하는 자바 클래스

 

#서블릿의 특징

-서버 쪽에서 실행되면서 기능을 수행한다.

-기존의 정적인 웹 프로그램의 문제점을 보완하여 동적인 여러 가지 기능을 제공한다.

-스레드 방식으로 실행된다.

-자바로 만들어져 자바의 특징(객체 지향)을 가진다.

-컨테이너(WAS=톰캣)에서 실행된다.

-컨테이너 종류에 상관없이 실행된다.(플랫폼 독립적)

-보안 기능을 적용하기 쉽다.

-웹 브라우저에서 요청 시 기능을 수행한다.

 

#서블릿 API 계층 구조와 기능

>GenericServlet 추상클래스는 Servlet과 ServletConfig 인터페이스를 구현한다.

>HttpServlet는 GenericServlet 추상클래스를 상속받는다.

 

#서블릿 API 구성 요소 특징

>GenericServlet 클래스는 여러 통신 프로토콜에 대한 서블릿 기능을 구현한다.

>GenericServlet 클래스를 상속받는 HttpServlet 클래스는 HTTP프로토콜을 사용하는 서블릿 기능을 수행한다.

 

#서블릿 생명주기(Life Cycle)메서드

> 서블릿 실행 단계마다 호출되어 기능을 수행하는 콜백 메서드

생명 주기 단계 호출 메서드 기능
초기화 init() -서블릿 요청 시 맨 처음 한 번만 호출된다.
-서블릿 생성 시 초기화 작업을 주로 수행한다.
작업 수행 doGet()
doPost()
-서블릿 요청 시 매번 호출된다.
(request, response) 
-실제로 클라이언트가 요청하는 작업을 수행한다.
종료 destroy() -서블릿이 기능을 수행하고 메모리에서 소멸될 때 호출된다.
-서블릿의 마무리 작업을 주로 수행한다.

※init()와 destroy() 메서드는 생략 가능하나 doGet/doPost 메서드는 반드시 구현해야 한다.

 

 

 

728x90
반응형

댓글