[Servlet] 서블릿이란?

2024. 9. 28. 15:23·BackEnd

서블릿 (Servlet) 이란?

클라이언트의 요청(request)에 대해 동적으로 작동하는 웹 어플리케이션 컴포넌트이다.

클라이언트에서 요청이 들어오게 되면 서버에서 요청을 처리하고 그 결과를 반환해준다.

 

MVC 패턴에서 컨트롤러로 이용된다.

동작 과정

1. 클라이언트의 요청

2. HttpServletRequest, HttpSerlvetResponse 객체를 생성

3. web.xml에서 어느 서블릿에 대한 요청인지 확인

4. 해당 서블릿에서 get요청인지, post요청인지에 따라 doGet, doPost 메서드 실행하여 response 객체에 응답 전송

5. HttpServletRequest, HttpSerlvetResponse 객체 소멸

 

 

생명 주기

1. init()

- 서블릿 생성시 초기화 작업

2. service()

 - doGet(), doPost()로 요청에 따른 작업 수행

3. destroy()

 - 작업을 수행하고 메모리에서 소멸될 때 호출

 

서블릿 컨테이너 ( Servlet Container )

 

서블릿 컨테이너는 서블릿을 실행하고 관리하는 역할을 하는 소프트웨어 컴포넌트이다.

 

서블릿 컨테이너의 주요 기능을 알아보자

 

1. 요청 및 응답 관리

  클라이언트(브라우저)로부터 들어오는 HTTP 요청을 처리하고, 서블릿을 통해 생성된 HTTP 응답을 클라이언트로 전달한다.

 

2. 서블릿 생명 주기 관리

  서블릿 객체의 생성, 초기화, 요청 처리, 소멸 등의 생명 주기를 관리한다.

 

3. 세션 관리

  사용자 세션을 관리하고, 이를 통해 사용자가 접속한 상태를 유지할 수 있도록 한다

 

4. 보안

  인증 및 권한 관리를 통해 웹 애플리케이션의 보안 기능을 제공한다.

 

5. 멀티스레딩 지원

  서블릿 컨테이너는 여러 클라이언트의 요청을 동시에 처리할 수 있도록 멀티스레드 환경을 지원한다.

 

대표적인 서블릿 컨테이너로는 톰캣, 제티 등이 있다. 이 컨테이너들은 자바EE를 표준으로 따르며 서블릿과 같은 서버 측 자바 기술을 실행할 수 있다.

'BackEnd' 카테고리의 다른 글

Spotify API를 이용해 엔터프라이즈 기술 스택 학습하기 [#2] - Spotify API 사용을 위한 토큰을 관리해보자  (2) 2025.04.11
Spotify API를 이용해 엔터프라이즈 기술 스택 학습하기 [#1] - 프로젝트 시작하기  (0) 2025.04.04
Spring Security + jwt + redis 로그인 흐름  (1) 2025.02.03
'BackEnd' 카테고리의 다른 글
  • Spotify API를 이용해 엔터프라이즈 기술 스택 학습하기 [#2] - Spotify API 사용을 위한 토큰을 관리해보자
  • Spotify API를 이용해 엔터프라이즈 기술 스택 학습하기 [#1] - 프로젝트 시작하기
  • Spring Security + jwt + redis 로그인 흐름
의중
의중
  • 의중
    개발어려워
    의중
  • 전체
    오늘
    어제
    • 전체글 (30) N
      • Algorithm (12)
      • SSAFY (1)
      • 자료구조 (4)
      • 운영체제 (2)
      • JAVA (2)
      • ML, DL (0)
      • BackEnd (4)
      • DevOps (1)
      • 네트워크 (3)
      • DB, SQL (1) N
  • hELLO· Designed By정상우.v4.10.3
의중
[Servlet] 서블릿이란?
상단으로

티스토리툴바