Servlet
- 서버 쪽에서 실행되면서 클라이언트의 요청에 따라 동적으로 서비스를 제공하는 자바 클래스
- 서블릿은 자바로 작성되어 있으므로 자바의 일반적인 특징을 모두 가지고 있음
- 서블릿은 서버에서 실행되다가 웹 브라우저에서 요청을 하면 해당 기능을 수행한 후 웹 브라우저에게 결과를 전송함
- 서버에서 실행되기 때문에 보안과 관련된 기능도 훨씬 안전하게 수행이 가능함
Servlet Life Cycle(서블릿 생명 주기)
* init()
- 단 한번만 호출이 됨.
- 서블릿이 서비스하기 위해 필요한 초기화 작업을 수행을 함.
* service()
- init() 메서드가 service() 메서드를 호출을 함.
- 사용자의 요청에 따라 스레드 단위로 실행되는 메서드임. (여러 번 실행)
- 각각 service() 메서드를 통해서 doGet(), doPost() 메서드가 호출이 됨.
- 파라미터인 HttpServletRequest 객체와 HttpServletResponse 객체를 통해서 사용자의 요청을 처리함.
* destory()
- 서블릿이 종료 요청이 오면 한 번만 호출되는 메서드
- 서블릿이 종료되면서 정리할 작업이 있으면 destory() 메서드를 오버라이딩(재정의) 해서 구현을 함.
Servlet 동작 과정
- 클라이언트가 요청을 하면 요청하는 서블릿이 메모리에 로딩이 되어 있는지 확인을 함.
- 최초의 요청이면 init() 메서드를 호출하여 요청하는 클래스의 인스턴스(객체)를 메모리에 로딩을 함.
- 그런 다음 doGet()이나 doPost() 메서드를 호출하여 서비스를 함.
- 클라이언트가 다시 동일한 서블릿을 요청을 하면 톰캣은 요청하는 서블릿이 메모리에 로딩이 되어 있는지를 확인을 함.
- 이번에는 메모리에 로딩이 되어 있는 것이 확인이 되므로 바로 doGet()이나 doPost() 메서드를 호출함.
Servlet 방식
- 웹 개발을 위한 표준이 되는 클래스를 말함.
- 웹 브라우저의 요청을 스레드 방식으로 처리하는 기술을 말함.
- 서버 쪽에서 실행되면서 클라이언트의 요청에 따라 동적으로 서비스를 제공하는 자바 클래스임.
- 처리해야 할 일들을 기술하는 곳.
- 서블릿은 일반 자바 프로그램과 다르게 독자적으로 실행되지 못하고 톰캣과 같은 서버에서 실행이 됨.
서블릿의 특징
* 서버쪽에서 실행되면서 기능을 수행함.
* 기존의 정적인 웹 프로그램의 문제점을 보완하여 동적인 여러 가지 기능을 제공함.
* 스레드 방식으로 실행이 됨. - 중요
* 클라이언트의 요구를 처리하는 기능을 최초 한 번만 메모리로 로딩이 됨.
'Back-End > JSP' 카테고리의 다른 글
[JSP] JSP에서의 주석 (0) | 2021.10.25 |
---|
댓글