package ex01;
import java.io.IOException;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/*
* # HttpServlet class
* - GenericServlet 을 상속 받아서 HTTP 프로토콜을 사용하는 웹 브라우저에서 Servlet 기능을 수행.
*
* # Servlet LifeCycle
* - 초기화 : init()
* > Servlet 요청시 맨 처음 한번만 호출.
*
* 작업 수행 : doGet(), doPost()
* > Servlet 요청시 매번 호출.
* 실제로 클라이언트가 요청하는 작업 수행.
*
* 종료 : destroy()
* > Servlet이 기능을 수행하고 메모리에서 소멸될 때 수행.
*
* # Servlet 생성 과정
* - 1. 사용자 정의 Servlet Class 구현.
* 2. Servlet 메서드 구현.
* 3. Servlet Mapping 작업. -> 작업 Class이름과 연결해주는 작업.
* 4. 웹 브라우저에서 Servlet Mapping 이름으로 요청.
*
*
* # Servlet Mapping
* - web.xml 파일에서 설정.
*
*
*/
public class LifeCycle extends HttpServlet {
// 최초 요청시 한번만 실행
public void init(ServletConfig config) throws ServletException {
System.out.println("- init() run -");
}
// 요청시마다 실행
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
System.out.println("- doGet() run -");
}
// 종료
public void destroy() {
System.out.println("- destroy() run -");
}
}