Backend/jsp

[JSP] 서블릿, 서블릿 컨테이너

양원준 2022. 10. 19. 01:08
728x90

서블릿

  • 자바를 기반으로 하는 웹 애플리케이션 기술
  • JSP는 서블릿 기반의 웹 스크립트 언어, 내부적으로 서블릿으로 변환되어 실행

--> 자바를 사용하여 웹을 만들기 위하여 필요 기술

서블릿 동작 방식

  1. 클라이언트가 url을 입력
  2. HTTP Request가 Servlet Container로 전송
  3. 요청을 받은 컨테이너가 HttpServletRequest, HttpServletResponse 객체 생성
  4. web.xml을 기반으로 요청한 url이 어떤 서블릿에 대한 요청인지 찾음
  5. 해당 서블릿에서 service메서드 호출 후 doGet() 또는 doPost()를 호출
  6. doGet() 또는 doPost()는 동적 페이지를 생성한 후 HttpSevletResponse에 응답
  7. HttpServletRequest, HttpServletResponse 객체 소멸

서블릿의 장점

  • 자바를 기반으로 자바 api 모두 사용 가능
  • 운영체제나 하드웨어 영향을 받지 않으므로, 한 번 개발된 애플리케이션은 다양한 서버 환경에서도 실행

웹 애플리케이션 개발에 서블릿 사용 시 이점

  • mvc 패턴을 쉽게 적용할 수 있고 컨테이너와 밀접한 프로그램 구현 가능
  • mvc패턴을 적용할 때 콘텐츠와 비즈니스 로직을 분리할 수 있으며 컨트롤러와 뷰가 역할을 분담함으로써, 웹 디자이너와 개발자 간에 작업을 원활하게 함
728x90