본문 바로가기
💻Dev/JSP & Servlet

[JSP] 6.Servlet 생명주기(Life-Cycle)

by 현주먹 2020. 8. 30.

 

 

Servlet 생명주기(Life-Cycle)

서블릿 객체는 사용자가 요청하면 일을 시작하고, 다시 응답함으로써 서블릿의 역할을 다 한다.

요청이 들어와서 서블릿이 작업을 시작하고 응답할때까지 생명주기를 알아보자.

 

 

[출처] https://velog.io/@max9106/JSP-Servlet-Life-cycle%EC%84%9C%EB%B8%94%EB%A6%BF-%EC%83%9D%EB%AA%85%EC%A3%BC%EA%B8%B0-5ak58h5ffj

 

 

  • @PostContruct - 서블릿이 생성되기 전에 준비하는 단계
  • init() - 서블릿이 생성(초기화)되는 단계
  • service - 개발자가 구현한 방식으로 서블릿이 일을 하는 단계 (doGet(),doPost() 등을 호출)
  • destroy() - 서블릿이 일을 마치고 소멸되는 단계
  • @PreDestroy - 서블릿 소멸 뒤 정리하는 단계

@PostContruct,@PreDestroy 는 개발자가 어노테이션을 붙여 별도의 메소드를 선언해야 한다.

 

 

 

public class ServletEx extends HttpServlet {

	// servlet 실행 단계
	protected void doGet(HttpServletRequest request, HttpServletResponse response)
    	throws ServletException, IOException {
		System.out.println(" -- doGet() -- ");
	}

	protected void doPost(HttpServletRequest request, HttpServletResponse response) 
   		throws ServletException, IOException {
		doGet(request, response);
	}
	
	@PostConstruct
	public void postConstruct() {
		System.out.println(" -- postConstruct() -- ");
	}
	
    //servlet 생성 단계
	@Override
	public void init() throws ServletException {
		System.out.println(" -- init() -- ");
	}
	
    //servlet 종료 단계
	@Override
	public void destroy() {
		System.out.println(" -- destroy() -- ");
	}
	
	@PreDestroy
	public void preDestory() {
		System.out.println(" -- preDestory() -- ");
		
	}

}

 

 

 

[참고] 인프런 - 백기선 님의 실전 JSP - 신입 프로그래머를 위한 강좌를 보고 공부한 내용을 바탕으로 작성했습니다.

'💻Dev > JSP & Servlet' 카테고리의 다른 글

[JSP] 9.쿠키(Cookie)  (0) 2020.09.10
[JSP] 8.jsp request,response  (0) 2020.09.01
[JSP] 7.form 데이터 처리  (0) 2020.08.31
[JSP] 5.request, response  (0) 2020.08.29
[JSP] 4.Servlet Mapping (맵핑)  (0) 2020.08.28
[JSP] 3.Servlet(서블릿)이란? Servlet 맛보기  (0) 2020.08.28