Spring 기초 정리 - Servlet

Zyoon·2025년 5월 7일

Spring 기초정리

목록 보기
2/18
post-thumbnail

💡 Servlet 구조 정리


Servlet


📘 Servlet은 Java 웹의 기본

Servlet이란?

  • 서블릿은 Java로 작성된 서버 측 프로그램
  • HTTP 요청을 받아서 처리하고, 응답을 생성하는 역할을 한다.
  • Java EE(Java Enterprise Edition, 현재는 Jakarta EE)의 표준 웹 컴포넌트

Servlet의 동작 흐름 (기본 구조)

  1. 클라이언트가 HTTP 요청(Request)을 보냄 (예: 브라우저에서 GET /write)
  2. 서블릿 컨테이너가 요청을 받아 해당 서블릿 클래스에 전달
  3. 서블릿 클래스가 요청 처리 (파라미터 받고, DB 접근 등)
  4. 응답(Response)을 만들어 클라이언트에게 반환

DispatcherServlet

  • Spring MVC의 모든 요청을 받는 핵심 서블렛
  • 모든 요청을 받아, 적절한 Controller로 전달한다.
  • 즉, @RestController@PostMapping, @GetMapping 등의 모든 작업을 수행한다.

순수 Servlet 과 Spring 방식 비교

  • 간단 비교
    구분ServletSpring
    핵심 개념HttpServlet 클래스 직접 구현@Controller, @RestController 사용
    요청 처리doGet(), doPost() 오버라이드메서드에 @GetMapping, @PostMapping
    설정web.xml 또는 Servlet 3.0 API대부분 자동 설정 (Spring Boot)
    장점가장 기본적인 웹 컴포넌트개발자 친화적, 구조화된 MVC 지원

  • 예시 비교

    자바 Servlet
    @WebServlet("/hello")
    public class JavaServlet extends HttpServlet {
        protected void doGet(HttpServletRequest req, HttpServletResponse resp) {
            resp.getWriter().write("Hello World");
        }
    }
    Spring 방식
    @RestController
    public class HelloController {
        @GetMapping("/hello")
        public String hello() {
            return "Hello World";
        }
    }
    • Servlet 은 자바 웹의 기본이며, SpringServlet 을 더 쉽고 효율적으로 사용하게 해주는 프레임 워크이다.
    • Spring Boot 에서는 Servlet 설정까지도 자동으로 처리된다.
    • Spring 의 모든 Servlet 요청은 DispatcherServlet 을 통해 시작된다.
profile
기어 올라가는 개발

0개의 댓글