[스프링 MVC 강의] 2. Servlet

TEO_K·2021년 5월 17일
0

Spring MVC 강의 정리

목록 보기
1/1

Web Application Server (WAS) 직접 구현

  • CRUD와 같은 비지니스 로직에 비해 TCP/IP 연결부터 할일이 너무 많음

  • Request를 처리하려면 이 텍스트를 파싱해야 함

-> Servlet 등장

  • 비지니스 로직을 제외한 나머지 작업을 자동화

Servlet 예시 코드 (많이 봤지?)

  • urlPattern의 URL이 호출되면 Servlet 코드가 실행
  • HTTP Request 정보를 사용할수 있는 HttpServletRequest
  • HTTP Response 정보를 제공할수 있는 HttpServletResponse
    => HTTP를 정말 간편하게 활용할수 있음

WAS Reqeust/Response 구조


1. 브라우저에서 /hello 호출
2. request/response 객체 생성
3. helloServlet에 request/response 객체 전달
4. 결과를 response에 담아서 Http Response return
5. Hello World 출력 (response 객체)

Servlet Container

  • Tomcat 처럼 Servlet을 지원하는 WAS를 Servlet Container 라고 함
  • Servlet 객체의 생성, 초기화, 호출, 종료등의 생명주기(Life Cycle)을 관리
  • 그림처럼 Servlet 여러개 관리 가능
  • Servlet 객체는 싱글톤으로 관리
  • JSP도 서블릿으로 변환 되어서 사용
  • 동시 요청을 위한 멀티 쓰레드 처리 지원
    -> 서버가 동시 요청을 처리할 수 있는 이유!

JSP는 Serlvet 으로 변환된다. 어떻게?

  • JSP파일은 서버에 바로 띄워 지는게 아니다.
  • 호출된 JSP 파일은 Tomcat 의 컴파일 엔진중 하나인 Jasper 가 .Class로 컴파일 -> 즉 Servlet
  • 그후 JspWriter를 사용하여 HTML 태그를 작성
  • HTML 실행

중요한건 JSP는 Servlet 이라는거~

profile
개발자가 되고싶은 코드몽키

0개의 댓글