티스토리 뷰

JSP

Servlet ) 1. Servlet 구현 및 실행

h2de6n 2021. 4. 10. 11:16

서블릿 클래스 간의 관계


- 모든 서블릿은 반드시 HttpServlet를 상속받아야 한다. HttpServlet를 상속받지 않는 클래스는 서블릿이라 할 수 없고, 클라이언트가 실행을 요청하여도 실행되지 않는다.

 

서블릿 프로그램의 클래스 계층 구조

 

Servlet 인터페이스

- Servlet은 서블릿 프로그램을 개발할 때 반드시 구현해야 하는 메소드를 선언하고 있는 인터페이스이다.

 

Generic Servlet 클래스

- Servlet 인터페이스를 상속하여 클라이언트-서버 환경에서 서버단의 애플리케이션으로서 필요한 기능을 구현한 추상 클래스이다.

 

HttpServlet 클래스

- GenericServlet 클래스를 상속하여 service() 메소드를 재정의함으로써 HTTP 프로토콜 기반으로 브라우저로부터 요청을 전달받아 처리하도록 하는 클래스이다.

 

 

 

서블릿 실행 순서


- Java EE 기반 프로그램은 실행의 흐름을 개발자가 제어하는 것이 아니라 컨테이너가 제어한다. 따라서 개발자가 아닌 제3자가 프로그램의 실행 흐름을 제어하는 것을 IoC(Inversion of Control) 우리말로 번역하면 "제어의 역전"이라 한다.

 

서블릿 실행 순서

- 최초의 요청 여부 판단 : 서블릿 컨테이너는 현재 실행할 서블릿이 최초의 요청인지 판단하고 딱 한번만 실행한다.

- 서블릿 객체 생성: 서블릿 컨테이너는 요청받은 서블릿이 최초의 요청이라면 해당 서블릿을 메모리에 로딩하고 객체를 생성한다. 서블릿은 최초 요청이 들어왔을 때 한번만 객체를 생성하고 이때 생성된 객체를 계속 사용한다.

 

서블릿의 콜백 메소드

 

 

 

서블릿 객체 생성


- 서블릿 객체가 메모리에 생성되는 시점은 서버 입장에서 클라이언트로부터 최초로 서블릿 실행요청이 있을 때마다 서블릿 객체를 생성하는 것이 아니고, 최초 요청 때 생성한 서블릿 객체를 계속 사용한다는 것이다.

- 서블릿은 한 번 생선한 객체를 재사용하는 거라서 처리속도, 메모리 부분에서 이전의 기술보다 효율적인 장점이 있다.

 

서블릿 객체 삭제

- 최초 요청 시 객체가 생성되고 이때 생성된 객체가 재사용되며, 서버가 중지될 때 서블릿 객체는 비로소 삭제된다.

 

 

 

web.xml 설정을 통해 접근


web.xml  설정방법과 실행순서

 

 

@WebServlet을 통해 접근


@WebServlet 어노테이션 속성

 

'JSP' 카테고리의 다른 글

Servlet ) 2. Servlet 요청정보와 응답정보  (0) 2021.04.12
JSP ) 1. 웹과 HTTP 프로토콜의 이해  (0) 2021.04.04
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
글 보관함