Java Servlet 웹 애플리케이션을 동적으로 처리할때 사용되는 클래스이다,
클라이언트의 동작, 요청에 맞춰 동작하고 서블릿 컨테이너 안에서 실행되고 관리된다.
정적 페이지들과 비즈니스 로직을 분리시키고 Request를 받으면 HTTP 형식으로 Response 한다.
초기화: init() = 서블릿 요청시 한번만 실행되면 서블릿이 변경되면 destory() 메서드들을 통해서 소멸하고, 새로운 init() 메소드를 호출한다.
소멸: destroy() = 서블릿이 소멸할때 사용되는 메소드로 Garbage Collection 진행
서비스: Service() = 서블릿이 서비스화, 각 요청들을 처리하고 요청 판별
클라이언트가 HTTP Request를 전송하여 Servlet Container에 전송
Servelet Continaer에서 HttpServletRequest, HttpServletRespose 객체 생성
web.xml을 통해 어떤 sevlet에대한 요청인지 판별
service() 메소드 호출하여 doGet() , doPost() 호출
ServletResponse에 동적으로 만들어진 HTTP 형식으로 Respond
HttpServletRequest, HttpServletRespose 객체 소멸
sevlet들을 관리, 생성, 제거 하기 위한 컨테이너로
서블릿 생명주기 관리
웹서버 통신
멀티쓰레드 관리
보안 관리
서블릿을 사용할때 JVM에서 분리된 쓰레드에서 처리하고, HTTP 요청에 응답하다.
https://velog.io/@han_been/Servlet
https://code-lab1.tistory.com/210
https://velog.io/@han_been/%EC%84%9C%EB%B8%94%EB%A6%BF-%EC%BB%A8%ED%85%8C%EC%9D%B4%EB%84%88Servlet-Container-%EB%9E%80