TIL

Servlet 서블릿

아람2 2025. 2. 13. 20:58
반응형

Servlet 서블릿 

Java 로 작성된 웹 애플리케이션을 만들기 위한 기술 중 하나 

웹 브라우저에서 들어온 요청을 처리하고 응답을 생성하는 Java 프로그램 

 

서블릿은 클라이언트 (웹 브라우저) 의 요청을 받고, HTML or JSON 같은 응답을 만들어준다 

Java 로 웹 애플리케이션을 만들 때 가장 기본적인 서버 측 프로그램으로,

JSP, Spring MVC 같은 웹 기술들도 결국 내부적으로 서블릿을 사용한다 

Servlet 역할 

1. 클라이언트 (웹 브라우저) 가 서버에 HTTP 요청을 보낸다 

2. Servlet 이 요청을 받아 필요한 로직을 실행한다 (ex. 데이터베이스 조회) 

3. 결과를 HTML or JSON 등의 형태로 응답을 생성하여 클라이언트에게 반환한다 

서블릿은, 클라이언트와 서버 간의 "중개자" 역할을 한다고 생각하면 쉽다 

Servlet VS JSP VS Spring MVC 

기술 설명  특징 
Servlet Java 코드로 직접 요청/ 응답을 처리  코드가 길어지고 복잡해진다 
JSP HTML 코드 안에 Java 삽입  서블릿보다 개발이 편리하다 
Spring MVC 서블릿 기반의 프레임워크  유지보수 및 확장성이 뛰어나다 

서블릿 → JSP → Spring MVC 순서로 발전했다 
Spring Boot 에서 사용하는 Controller 도 결국 내부적으로 서블릿을 사용한다 

 

Servlet 

코드가 길어지고 복잡해진다는 단점이 있다 

기본적인 HTTP 요청과 응답 처리에 대한 코드가 많아지면 가독성이 떨어지기 때문에 

이런 부분을 보완하기 위해 JSP 나 Spring MVC 같은 기술이 등장했다 

JSP

HTML 내에 Java 코드를 삽입할 수 있는 기술 

Servlet 보다 더 간단하게 웹 페이지를 만들 수 있지만, 

서블릿에 비해 복집한 로직 처리가 필요한 경우 유지보수가 어려워질 수 있다 

Spring MVC

서블릿을 기반으로 한 프레임워크 

보다 높은 수준의 추상화를 제공하여 코드가 깔끔하고, 유지보수 및 확장성이 뛰어나서

실제 개발에서는 Spring MVC 가 많이 사용된다 

Spring Boot 

Spring MVC 의 설정을 간소화한 프레임워크 

반응형